const 함수는 상수화 시킨다는 의미이다
멤버 변수의 값을 변경하지 않는 범버 함수 인 경우 const 함수로 만들수 있다.
멤버 함수를 Const 함수로 만들면 좋은 점
§다른 개발자가 “아, 이 함수는 멤버 변수의 값을 변경하지 않는구나”라고 생각하게 만든다.
§실수로 멤버 변수의 값을 바꾸려고 하면, 컴파일러가 오류 메시지를 통해서 알려준다.
§객체가 Const 속성을 가진 경우에는 Const 함수만 호출할 수 있다.
§다른 개발자가 “아, 이 함수는 멤버 변수의 값을 변경하지 않는구나”라고 생각하게 만든다.
§실수로 멤버 변수의 값을 바꾸려고 하면, 컴파일러가 오류 메시지를 통해서 알려준다.
§객체가 Const 속성을 가진 경우에는 Const 함수만 호출할 수 있다.
class cellphone
{
public:
int bell;
void call(int quick);
void showdata() const; <--- const멤버 함수라는 뜻이다.
}
void main()
{
const cellphone myphone; //const 객체라는 의미
myphone.bell =3 // 오류 const 객체를 생성해서 변경할수가 없기에...
myphone.call(1); // 오류 const 객체를 생성해서 변경할수가 없기에...
myphone.showdata(); // const객체는 const 멤버함수만 호출할수가 있다.!!!!
}
'C++' 카테고리의 다른 글
explicit &&&& mutable (0) | 2009.01.15 |
---|---|
클래스와 Static (0) | 2009.01.15 |
클래스와 const (0) | 2009.01.14 |
복사 생성자가 호출되는 시점 (0) | 2009.01.08 |
복사생성자 (0) | 2009.01.08 |
friend 선언 (0) | 2009.01.06 |
This 포인터 (0) | 2009.01.06 |
열혈강의 연습문제 4-2 /생성자/소멸자/객체 포인터 동적 할당/해체/문자입력받아서 순서대로 출력 (0) | 2009.01.06 |
malloc 함수와 new 연산자의 차이 (0) | 2009.01.05 |
소멸자의 특징과 필요성 (0) | 2008.12.30 |