생성자란?
생성자 (constructor)
: 클래스는 객체가 생성될 때 자동으로 실행되는 생성자 라는 특별한 멤버 함수를 통해 객체를 초기화
생성자의 특징
- 생성자의 목적은 객체가 생성될 때 필요한 초기 작업을 위함이다
- 생성자 함수는 오직 한 번만 실행된다
- 생성자 함수의 이름은 클래스 이름과 동일하게 작성되어야 한다
- 생성자 함수의 원형에 리턴 타입을 선언하지 않는다
- 생성자는 중복 가능하다
객체 생성과 생성자 실행
위임 생성자, 생성자가 다른 생성자 호출 기능
C++11 부터는 중복된 초기화 코드를 하나의 생성자로 몰고, 다른 생성자에서 이 생성자를 호출할 수 있게 한다.
타겟 생성자 (target constructor)
: 객체의 초기화 작업이 코딩된 Circle(int r)를 타겟 생성자라고 부름
위임 생성자 (delegating constructor)
: Circle() 생성자는 객체의 초기화를 다른 생성자에 위임한다고 해서 위임 생성자
타겟 생성자에 객체 초기화를 전담시킴으로써 객체의 생성 과정이 명료해지고 단순해진다.
위임 생성자에서는 타겟 생성자를 호출한 뒤, 자신만의 코드를 추가하면 된다.
생성자와 멤버 변수의 초기화
생성자는 꼭 있어야 하는가?
기본 생성자
'C++ > [책 정리] 명품 C++ 프로그래밍' 카테고리의 다른 글
6. 접근 지정 (0) | 2023.04.05 |
---|---|
5. 소멸자 (0) | 2023.04.05 |
3. 객체 생성과 객체 활용 (0) | 2023.03.10 |
2. C++ 클래스 만들기 (0) | 2023.03.10 |
1. 객체에 대한 이해 (0) | 2023.03.10 |