1 답변
-
1. 레퍼런스는 만들어진 뒤에는 바뀌지 못하는 반면, 포인터는 몇 번이나 재할당이 가능합니다.
2. 포인터는 아무것도 안 가리킬 수 있지만(NULL), 레퍼런스는 NULL일 수 없습니다.
3.
pointer arithmetics
는 있지만reference arithmetics
는 없습니다.예를 들면,
void getPtr(int* ptr){ getPtr(ptr+5); //ok } void getRef(int& ref){ getRef(ref+5); //not ok }
입니다.
알고리즘이나 자료구조를 구현할 때는 포인터를 주로 쓰고 그 외의 경우는 레퍼런스를 주로 사용합니다
댓글 입력