안녕하세요 판타지 코딩입니다.
오늘은 C++의 생성자에 대해서 공부해 보겠습니다.
생성자란 클래스의 멤버 변수를 초기화 해주기 위한 것입니다. 클래스를 생성하는 코드를 작성하여 설명드리겠습니다.
Class student{
private:
int num;
string major;
public:
student(){
num = 100;
}
};
1. 생성자가 무엇일까?
위에 코드에서는 student 클래스를 생성했습니다. private이라고 작성된 곳에는 int형 변수 num과 string형 변수 major를 생성했고, public이라고 작성된 곳에는 student()라는 생성자가 있습니다. 생성자의 특징은 데이터 타입이 없다는 것과 클래스의 이름과 동일하다는 것입니다. 이런 특징으로 멤버 함수와 구분할 수 있습니다. 그리고 생성자의 내부에는 private으로 생성한 변수 num을 100으로 초기화하는 코드가 있습니다. 생성자는 바로 멤버 변수를 초기화하기 위해 활용하는 것입니다.
2. 생성자는 왜 쓰는 것일까?
생성자는 멤버 변수를 초기화하는 역할을 합니다. 위의 예시처럼 멤버 변수가 private으로 설정되어 있다면, 클래스 내의 함수를 통해서 초기화를 할 수 있습니다. 그러므로 멤버 함수를 호출하지 않고, 객체가 생성됨과 동시에 멤버 변수를 초기화하기 위해서 활용하는 것입니다. 이 내용으로 알 수 있는 것은 생성자의 호출 시기는 객체가 생성될 때 라는 것입니다. 위의 코드 예시는 디폴트 생성자를 호출한 것입니다. 만약 다른 값으로 초기화를 하고 싶다면, 인자로 값을 넣어주고 객체 생성시에 인자를 넣어주면 됩니다.
감사합니다!
'C언어' 카테고리의 다른 글
C언어 포인터와 주소값 공부하기 / C언어 기초 (0) | 2023.01.05 |
---|---|
C언어 char형 활용하기 / C언어 기초 (0) | 2023.01.04 |
C언어와 C++의 차이 / 절차지향 언어 / 객체지향 언어 (0) | 2023.01.02 |
C언어 sizeof 함수 공부하기 / C언어 기초 (0) | 2022.12.29 |
C++ 클래스가 무엇일까? / 클래스를 생성하는 방법 / C++ 기초 (0) | 2022.12.27 |