드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[CPP] 참조자로 함수호출할 때, 궁금한점이 생겼습니다.
게시물ID : programmer_14623짧은주소 복사하기
작성자 : 핫게익
추천 : 0
조회수 : 452회
댓글수 : 3개
등록시간 : 2015/11/27 06:11:52
요즘 CPP를 혼자 책보면서 공부하고있습니다.
방금 참조자부분을 읽다보니 책에 이런 내용이 있더군요.
"코드를 분석하는 과정에 있다면, 함수의 호출문장만 보고도 함수의 특성을 어느 정도 판단할 수 있어야 한다. 그러나 참조자를 사용하는 경우,
함수의 원형을 확인해야 하고, 확인결과 참조자가 매개변수의 선언에 와있다면, 함수의 몸체까지 문장 단위로 확인을 해서 참조자를 통한 값의 변경이 일어나는지를
확인해야 한다."
라고 되어있더라구요.
충분히 납득할만하고, 포인터 대비 참조자의 큰 단점으로 보입니다.
그런데,
이런 내용도 있더라구요.
"그러나 const 키워드를 이용하면, 이러한 단점을 어느 정도는 극복할 수 있다."
void HappyFunc(const int &ref) {...}
라는 프로토타입을 만들면, 함수내에서 ref값이 바뀌지 않음을 쉽게 알 수 있다고 하는데...
함수 내에서 참조자의 값을 변경하지 않을 거라면, 굳이 참조자로 호출해야 하는 이유가 있나요??? 그냥 call-by-value랑 같지 않은지요??
실무에서 "참조자로 호출해야 했지만, 참조자의 값을 변경하지는 않는" 경우가 존재하나요???
댓글 분란 또는 분쟁 때문에
전체 댓글이 블라인드 처리되었습니다.
새로운 댓글이 없습니다.