Nagie's DevStory

[CPP] 27. 접근 지정자 (Access Modifier) 본문

Programming/C++

[CPP] 27. 접근 지정자 (Access Modifier)

Nagie 2023. 10. 22. 16:51
728x90
class MyClass {

public:

    int publicVar;      // 외부에서 직접 액세스 가능
    
protected:

    int protectedVar;  // 파생 클래스와 클래스 내부에서만 액세스 가능
    
private:

    int privateVar;    // 클래스 내부에서만 액세스 가능
    
public:

    void publicFunction() {
        // ...
    }
    
protected:

    void protectedFunction() {
        // ...
    }
    
private:

    void privateFunction() {
        // ...
    }
};

 

접근 지정자는 클래스의 데이터 멤버나 멤버 함수의 접근 권한을 제어하는 데 사용되는 키워드다.

접근 지정자는 클래스 외부에서 클래스 멤버에 대한 접근을 제한하거나 허용하는 데 중요한 역할을 하며

C++에서 사용하는 접근 지정자의 종류는 3가지가 있다.

 

1. public 

 

public은 클래스에 선언된 데이터 멤버나 멤버 함수를 외부에서 직접 액세스할 수 있게 만드는 접근 지정자다.

3가지 접근 지정자 중 접근 자유도가 제일 높다.

 

2. protected

 

protected는 클래스에 선언된 데이터 멤버나 멤버 함수를  파생 클래스에서 액세스할 수 있지만

클래스 외부에서는 public과는 다르게 액세스할 수 없다.

상속 후 기본 클래스의 일부 구현을 파생 클래스에서 확장할 때 주로 사용하게 된다.

 

3. private

 

private은(는) 클래스 내부에 선언된 데이터 멤버나 멤버 함수를 해당 클래스 내부에서만 액세스할 수 있게 만든다.

클래스 외부에서 액세스할 수 없는 것은 물론 상속받은 파생 클래스에서도 접근이 불가능해 

3가지 접근 지정자 중 접근 자유도가 제일 낮다.

728x90
Comments