스터디/C++
[ C++ ] 참조자에 대하여
알 수 없는 사용자
2019. 9. 23. 20:56
변수는 할당된 메모리 공간에 붙여진 이름이다.
int a = 10;
이와같이 변수 a는 값 10이 할당된 공간을 가르키는 이름이 되었다.
하지만 저 공간에 이름을 더 많이 부여할 수 없을까?
참조자는 자신이 참조하는 변수를 대신할 수 있는 또 하나의 이름이다.
( 별명이라고 생각하면 쉬울 것 같다. )
int a = 10;
int &ref = a;
참조자를 생성할 때는 변수 앞에 &연산자를 붙이고 선언시 해당 변수로 초기화하면 된다.
주의할 점은, 참조자는 한번 지정한 객체를 변경할 수 없다.
자, 그럼 참조에 대해 더 알아보자.
변수 a를 참조자 ref가 참조하게 된다. 그렇다면 대입연산의 과정에서 참조자 ref에 무엇이 전달된다고 해야 할까?
"변수 a를 참조할 수 있는 참조의 정보가 전달된다."
즉, 변수 a를 참조할 수 있는 참조 값이 참조자 ref에 전달되어, ref가 변수 a를 참조하게 된다.
그래서 우리는 전달되는 정보를 표현하기 위해서 '참조의 정보' 또는 '참조 값'이 전달된다라고 표현한다.