클래스 기본 문법
클래스는 관계에 대해 일절 고려하지 않는다면 함수를 포함하는 구조체라고 볼 수 있다.
클래스에는 생성자, 소멸자 등 문법상 자동으로 호출되는 함수가 존재하며, 이 때문에 C++에서는 Called by ~ 가 중요해진다. (생성자, 소멸자 등의 자동호출 시기를 아는 것이 도움이 된다.)
또한 클래스의 구성요소도 구조체처럼 멤버라고 지칭한다.
#include <iostream>
class UserData
{
public: // 접근제어 지시자
int age;
char name[32];
void print()
{
printf("%d, %s", age, name);
}
};
int main()
{
UserData user = { 30, "2DC" };
user.print();
return 0;
}
참고로 클래스 내의 함수는 인스턴스의 메모리 공간을 별도로 차지하지 않는다.
(여러 인스턴스가 함수를 각각 가지고 있는 것이 아니다.)
'C, C++' 카테고리의 다른 글
C++) 디폴트 생성자와 카피 생성자(참조자 멤버 초기화) (0) | 2024.01.22 |
---|---|
C++) 디폴트 생성자(Constructor)와 소멸자 (0) | 2024.01.21 |
C++) C++ 스타일 C코드와 this 포인터의 정의 (0) | 2024.01.20 |
C++) OOP에서 객체란 무엇인가 (0) | 2024.01.20 |
C++) Name Mangling (0) | 2024.01.20 |