[C/C++] 접근 지정자(public, protected, private)

2021. 9. 12. 14:24C or C++/C++

0. 접근 지정자?

= Access Modifier, Access Specifier

OOP 의 특징 중 하나 캡슐화, 클래스 내부의 멤버에 대한 접근 범위를 지정하는 것이다. 

 

 

C++/접근지정자

접근 지정자란? Access Modifier, Access Specifier 라고도 하며, 객체 지향 언어에서 객체를 캡슐화 하고, 외부에서 접근이 가능한 공개 멤버와 외부에서의 접근을 허용하지 않는 인가하지 않는 비공개

hyeonbell.tistory.com

1.public, protect, private

  • public
    해당하는 모든 멤버 함수들에 대하여 접근을 허용한다.
    생성자는 이 접근지정자로 지정되어야 한다. 이가 아니면 객체는 생성할 수 없으니 말이다.
  • private
    클래스의 특별한 지정자가 없는 경우, 그에 해당하는 멤버함수는 private(디폴트 접근 지정자)로 지정된다. 이 접근 지정자는 클래스내의 멤버 함수에서만 접근이 가능하다.
  • protected
    클래스 외부의 접근은 비인가 되지만, 클래스 내부의 멤버함수와 이 클래스를 상속하는 파생 클래스는 접근이 가능하다.

 

2. experiment code

 

3. etc...

 A. Struct, 구조체

디폴트 접근 지정자가 private인 class와 다르게 struct는 public 이다. 그렇기에 내외에서 접근이 가능하다.

 

 

 

C++ 09.03 - 클래스의 public과 private 접근 지정자

public과 private 접근 지정자 다음 구조체를 보자: struct DateStruct // members are public by default { int month; // public by default, can be accessed by anyone int day; // public by default, can be..

boycoding.tistory.com