객체도 상수화할 수 있다.

const instance ist(20);

이렇게 객체에 const 선언을 붙이게 되면, 이 객체를 대상으로는 const method 만 호출이 가능하다. 이는 객체의 const 선언이 다음의 의미를 갖기 때문이다.

"이 객체의 데이터 변경을 허용하지 않겠다."

때문에 const method 만 호출이 가능한 것이다. 


※ 멤버 변수에 저장된 값을 수정하지 않는 함수는 가급적 const로 선언해서, const 객체에서도 호출이 가능하도록 할 필요가 있다. 


const 와 함수 오버로딩

함수 오버로딩이 성립하려면 매개변수의 수나 자료형이 달라야 한다. 하지만 다음과 같이 const의 선언유무도 함수 오버로딩의 조건에 해당이 된다.

void simple() {    }

void simple() {    } const




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

getopt Function Example  (0) 2013.09.25
qsort Function Example  (0) 2013.09.25
복사 생성자의 완벽한 이해  (0) 2013.08.12
3n+1 문제  (0) 2013.03.27
List 자료구조로 만든 프로그램  (0) 2013.03.20
Posted by scii
: