본문 바로가기
programing/C++

함부로 인수에 레퍼런스 타입을 넣으면 안된다.

by RedWiz 2017. 4. 7.

- "비const 참조에 대한 초기 값은 lvaue여야 합니다."

> 주소값을 LValue 참조 하면 에러가 뜬다.

> 레퍼런스는 포인터 기반으로 돼있기 때문에 lvalue 이어야 한다.

(r value는 &주소 연산자를 사용할 수 없다. 함수의 임시 객체가 R value 인 것 주의)

cf. 포인터 기반이기 때문에 레퍼런스와 포인터는 속도 대동 소이하며 편의성으로 사용할 뿐이다.

 

 

 

- 대신 주소값을 다른 변수에 받아서 이 변수를 참조하면 되긴 한다.

 

- 주소값을 인수로 넣어 쓰기 위해서 인수에 레퍼런스 타입은 피해야 한다.


cf. 그런데 포인터에 레퍼런스를 쓸 일이 있나?  

cf. 윈도우 api의 LP어쩌구 타입은 주의...

'programing > C++' 카테고리의 다른 글

R6025 - pure virtual function call  (0) 2017.04.25
Get Set 함수를 쓰는 의미  (0) 2017.04.10
typedef 상수 포인터  (0) 2017.04.07
가변 함수  (0) 2017.04.05
final, override, interface  (0) 2017.04.03