Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 포인터와 참조 매개변수의 차이점은 무엇입니까?

<시간/>

포인터

포인터 변수는 변수의 주소를 저장하는 데 사용됩니다.

구문

Type *pointer;

초기화

Type *pointer;
Pointer=variable name;

참조

매개변수를 참조로 선언하면 기존 매개변수의 대체 이름이 됩니다.

구문

Type &newname=existing name;

초기화

Type &pointer;
Pointer=variable name;

포인터와 참조 매개변수의 주요 차이점은 다음과 같습니다. -

  • 참조는 다른 이름의 기존 변수를 참조하는 데 사용되는 반면 포인터는 변수의 주소를 저장하는 데 사용됩니다.

  • 참조는 null 값을 할당할 수 없지만 포인터는 할당할 수 있습니다.

  • 참조 변수는 값에 의해 참조될 수 있는 반면 포인터는 참조에 의해 참조될 수 있습니다.

  • 참조는 선언 시 초기화되어야 하지만 포인터의 경우 필요하지 않습니다.

  • 참조는 원래 변수와 동일한 메모리 주소를 공유하지만 스택에서 약간의 공간을 차지하는 반면 포인터는 스택에서 자체 메모리 주소와 크기를 갖습니다.