WinCNT

클래스(Class) 본문

게임 프로그래밍(학습 내용 정리)/C++

클래스(Class)

WinCNT_SSS 2021. 12. 9. 14:02

클래스

구조체가 진화한 것이 클래스

(클래스도 네임스페이지 않을까...?)

 

(C++)클래스의 특징

캡슐화/은닉화

 

C++에서의 구조체(Struct)와 클래스(Class)의 차이는?

디폴트의 접근 한정자가 다르다

 

왜 쓸까요?

자동차 운전 시, 운전자는 실제 부품들이 움직이는 것은 신경 안 쓰는 것처럼,

대부분은 숨기면서 필요한 것만 오픈하는 것처럼 데이터도 은닉함

 

특징

캡슐화 / 은닉화

캡슐화와 은닉화는 기본적으로 세트

캡슐화는 둘러싸는 것, 은닉화는 그로인해 숨겨지는 것

 

생성자 / 소멸자

int a를 선언하면 a라는 공간(4바이트)이 생긴다

마찬가지로 클래스로 객체를 생성, 즉 메모리의 공간을 잡을 때 호출되는 함수

소멸자는 동적 할당된 메모리의 공간을 해제하는 함수를 의미한다

변수의 수명과 유사한 면이 있다

※참고로 복사 생성자, 이동 생성자도 존재한며, 필요에 따라 알맞게 구현해야 한다

 

SSS