본문 바로가기
STL/CHAPTER 1. 연산자 오버로딩

0. const에 관하여

by 자잘 2019. 12. 27.

 STL 공부에 앞서서 STL에 필요한 C++문법을 다시 한번 짚고 넘어갑니다. 그 중 하나가 바로 const에 관한 것 입니다. 책의 순서와는 상관이 없지만 앞으로의 내용을 이해를 위해 가장 먼저 배치 해보았습니다.

 코드를 보시면 아시겠지만 GetX()와 GetY() 멤버 함수는 const함수입니다. 즉 함수 내부에서 멤버 변수 값을 바꿀 수 없다는 말입니다. 다음 포인트는 const 객체로 선언이 되어 있는 p1객체입니다. const객체는 초기에 설정된 멤버 변수 값을 바꿀 수 없습니다. 따라서 const 객체 p1은 const가 선언되어 있는 멤버 함수만 호출이 가능합니다. const 객체가 아닌 p2는 어떠한 멤버 함수든 호출이 가능하지만 p1은 const가 선언되어 있는 멤버함수인 GetX()와 GetY()만 호출이 가능합니다. 주석 처리가 되어 있는 45, 46라인의 SetX()와 SetY() 멤버 함수는 호출할 수 없습니다.