Step-by-Step
[C++] Struct와 Class 본문
JAVA는 Class를 이용하여 객체를 만드는데,
C++은 Class가 있음에도 불구하고 다들 Struct를 사용하는 걸까
일단 구조는 비슷하다 (거의 똑같음)
중요한 차이는 접근제어자에 있다.
접근제어자
- private : 동일 클래스 내에서만 접근 가능
- protected : 해당 클래스와 상속받은 파생 클래스에서만 접근 가능
- public : 어디서든 접근 가능
※ 참조 : JAVA는 package 개념이 있지만, C/C++은 없다.
Class vs Struct
- Class : private이 default
- Struct : public이 default
예를 들어보자
클래스 객체를 생성하고, 메소드를 이용하여 값을 가져오는 코드이다.
private 멤버라 접근할 수 없다고 나온다.
해결
이런식으로 public 접근지정자를 붙여주면 해결할 수 있다.
확실히 private이 기본 접근제어자면 개발시 별다른 작업 없이 객체지향의 장점인 은닉성을 실현할 수 있다.
나는 알고리즘 풀이에 집중하고 있기 때문에 struct가 더 유용한 듯 하다.
'언어 > C++' 카테고리의 다른 글
[C++] 백준1915 - 가장 큰 정사각형 (0) | 2022.12.15 |
---|---|
[C++] Struct, priority_queue 간단한 사용 (0) | 2022.11.15 |
[C++] Queue / Stack / Pair (0) | 2022.10.28 |
[C++] 백준2293 - 동전 1 (0) | 2022.10.26 |
[C++] 기본 입출력 (0) | 2022.10.26 |
Comments