• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

네가지 형변환 강의 질문

24.04.28 17:24 작성 24.04.28 17:48 수정 조회수 57

0

제가 c++ 강의를 보면서 무언가 빼먹은거 같아서 질문을 드려봅니다...

강의 설명 중 3분즈음에 등장하는 const_cast를 설명하실 때 궁금한 내용입니다.

const MyData& rdata = a; 일때

rdata의 멤버접근을 할 수 있는거는 const 키워드가 붙은것만 가능하다고 하셨는데

그 자세한 이유가 궁금합니다 <상수형 참조가 상수형 메서드만 호출>

 

답변 1

답변을 작성해보세요.

0

상수형 참조자를 이용해 인스턴스에 접근할 경우 l-value가 될 수 없으며 상수화된 메서드만 접근이 가능하도록 제한됩니다. 이는 언어의 문법이 그러한 것입니다. 이를 통해 우연히 발생할 수 있는 실수(멤버 값 변경)를 미리 문법적으로 차단 할 수 있습니다. 더 자세한 설명이 필요 할 수도 있겠으나 지금 당장은 문법이 그러하다는 사실을 기계적으로 암기하는 편이 더 간단하고 좋겠습니다. 참고하시기 바랍니다. 😄