C++/C++ 기본

접근 지정

검정비니 2018. 7. 7. 10:49
728x90
반응형

접근 지정자



객체 지향 언어에서는 객체를 캡슐화하고, 외부에서 접근 가능한 공개 멤버와 외부 접근을 허용하지 않는 비공개 멤버를 구분한다, C++에는 다음 3가지 멤버 접근 지정자(access specifier)가 있다.


- public(공개)

- private(비공개)

- protected(보호)


멤버에 대한 접근 지정은 클래스 선언부에서 접근 지정자 다음에 콜론(:)을 찍고 멤버들을 선언하는 방식으로 이루어진다.


i.e.

class Sample {

public:

//public 멤버들 선언

private:

//private 멤버들 선언

protected:

//protected 멤버들 선언

};




- private 멤버


private 접근 지정으로 선언된 멤버들로서, 클래스 내의 멤버 함수들에게 접근이 허용된다.


- public 멤버


public 접근 지정으로 선언된 멤버들로서, 클래스 내외를 막론하고 프로그램의 모든 함수들에게 접근이 허용된다.


- protected 멤버


protected 접근 지정으로 선언된 멤버로서, 클래스 내의 멤버 함수와 이 클래스를 상속받은 파생 클래스의 멤버 함수에게만 접근이 허용된다.



접근 지정자는 동일한 클래스 내에서 여러 번 사용될 수 있다. 또한, 접근 지정자가 선언되면 다른 접근 지정자가 선언될 때까지 모든 멤버에 대해 적용된다.


i.e.

class Sample {

private:

//private 멤버 선언

public:

//public 멤버 선언

private: //private 재사용

//private 멤버 선언

};




- 디폴트 접근 지정은 private


접근 지정을 하지 않은 경우 디폴트 접근 지정을 private으로 처리된다. 이것은 캡슐화의 기본 원칙이 비공개이기 때문이다.

반응형

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

C++ 구조체  (2) 2018.07.07
인라인 함수  (0) 2018.07.07
소멸자  (0) 2018.07.04
생성자  (0) 2018.07.04
객체 생성과 객체 활용  (0) 2018.07.02