const 선언할 경우 해당 함수의 this는 const가 된다.
즉, 수정 불가능한 상태가 된다. 따라서, this의 모든 멤버 변수에 접근할 수 없다.
또한, 해당 함수에서는 비 const 함수를 호출할 수 없다. 왜냐면 비 const함수에서는 멤버 변수가 수정될 수 있기 때문이다.
class AA {
public:
AA() = default;
~AA() = default;
void printData(int value) const
{
std::cout << this->data;
this->data = value; // 에러
changeData(); // 에러
}
void changeData(int value)
{
this->data = value;
}
private:
int data = 0;
};
int main()
{
std::cout << "Hello World!\n";
}
'Windows > Dev' 카테고리의 다른 글
[Visual Studio] NDK 툴체인 업그레이드 하는 방법 (0) | 2024.11.09 |
---|---|
windows + mac 동시 개발 시 주의 사항 (0) | 2024.10.15 |
[MSVC] 클래스 고찰 & 디컴파일 (0) | 2024.08.08 |
[VC++] 문자열 복사, 이동 (0) | 2024.05.09 |
detours 빌드 및 적용 (0) | 2024.04.11 |