본문 바로가기
C언어

C++ 생성자 / 클래스 / C++ 공부하기

by 여름코딩 2023. 1. 3.
반응형

안녕하세요 판타지 코딩입니다.

 

오늘은 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으로 설정되어 있다면, 클래스 내의 함수를 통해서 초기화를 할 수 있습니다. 그러므로 멤버 함수를 호출하지 않고, 객체가 생성됨과 동시에 멤버 변수를 초기화하기 위해서 활용하는 것입니다. 이 내용으로 알 수 있는 것은 생성자의 호출 시기는 객체가 생성될 때 라는 것입니다. 위의 코드 예시는 디폴트 생성자를 호출한 것입니다. 만약 다른 값으로 초기화를 하고 싶다면, 인자로 값을 넣어주고 객체 생성시에 인자를 넣어주면 됩니다.

 

감사합니다!

반응형