Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++ Const 멤버 함수 완벽 가이드 – 개념, 문법, 예제 총정리

Const 멤버 함수란?

C++에서 const 멤버 함수는 프로그램 내에서 const 키워드로 선언된 멤버 함수를 의미합니다. 이러한 함수가 호출하는 객체는 함수 내부에서 수정될 수 없습니다. 따라서 실수로 인해 객체가 변경되는 것을 방지하기 위해 const 키워드를 사용하는 것이 권장됩니다.

const 멤버 함수는 어떤 타입의 객체로든 호출할 수 있다는 장점이 있습니다. 반면, 일반(non-const) 멤버 함수는 non-const 객체로만 호출할 수 있습니다.

Const 멤버 함수의 문법

C++에서 const 멤버 함수를 선언하는 기본 문법은 다음과 같습니다.

datatype function_name() const;

예제 코드

다음은 C++에서 const 멤버 함수를 사용하는 대표적인 예제입니다.

#include<iostream>
using namespace std;
class Demo {
    int val;
    public:
    Demo(int x = 0) {
        val = x;
    }
    int getValue() const {
        return val;
    }
};
int main() {
    const Demo d(28);
    Demo d1(8);
    cout << "The value using object d : " << d.getValue();
    cout << "\nThe value using object d1 : " << d1.getValue();
    return 0;
}

실행 결과

The value using object d : 28
The value using object d1 : 8

코드 설명

위 예제에서 getValue() 함수는 const로 선언되었습니다. main 함수에서 const 객체 d와 일반 객체 d1 모두 getValue()를 성공적으로 호출하는 것을 확인할 수 있습니다.

만약 getValue()가 const로 선언되지 않았다면, const 객체 d로는 해당 함수를 호출할 수 없어 컴파일 오류가 발생합니다. 이처럼 const 멤버 함수는 객체의 데이터를 읽기 전용으로만 접근하도록 보장하여 코드의 안정성과 신뢰성을 크게 높여줍니다.