참조 타입 변수(레퍼런스) 는 별명과 같은 느낌이라고 보면 될 것이다.
c++의 포인터 와 레퍼런스의 차이점을 알아보자.
# 포인터는 null을 가리킬 수 있지만 참조 타입 변수는 null을 가리킬 수 없다.
- 포인터를 초기화 하지 않거나 null을 가리키고 있는 포인터에 접근 했을 때
발생하는 에러가 참조 타입 변수에서는 나타나지 않는다.
# 참조 타입 변수는 선언과 동시에 초기화 하지않으면 컴파일 오류가 발생한다.
# 포인터는 * , -> 등의 포인터 연산자를 통해서 접근 해야 하지만 참조 타입 변수는
마치 지역변수 처럼 접근할 수 있다.
# 참조 타입 변수는 초기화 과정에서만 값을 할당 할 수 있고 이후에 다시 할당을
시도 할 경우 컴파일 에러가 발생한다. 하지만 포인터 변수는 참조 대상을 언제든지 변경할
수 있다.
'학부생 공부 > C++' 카테고리의 다른 글
(21.05.20) next_permutation (0) | 2021.05.20 |
---|---|
C++ memory [heap] (0) | 2020.12.24 |
C++ memory [stack] (0) | 2020.12.22 |
값이 [a,b]인 데이터의 개수를 반환하는 함수 (0) | 2020.10.10 |
call by reference, call by value (0) | 2019.11.10 |