[c++] 클래스의 초기화

C++에서 클래스를 초기화하는 방법에 대해 알아보겠습니다.

기본 생성자와 매개변수가 있는 생성자

클래스를 초기화하는 가장 기본적인 방법은 기본 생성자(default constructor)매개변수가 있는 생성자(parameterized constructor) 를 사용하는 것입니다.

class MyClass {
public:
    // 기본 생성자
    MyClass() {
        // 초기화 코드
    }

    // 매개변수가 있는 생성자
    MyClass(int value) {
        // 초기화 코드
    }
};

멤버 이니셜라이저 리스트

멤버 변수를 초기화하는 또 다른 방법은 멤버 이니셜라이저 리스트(member initializer list) 를 사용하는 것입니다. 이 방법은 성능상의 이점과 초기화 리스트의 순서를 제어하는 장점이 있습니다.

class MyClass {
private:
    int number;
    double value;

public:
    // 멤버 이니셜라이저 리스트를 사용하는 생성자
    MyClass(int num, double val) : number(num), value(val) {
        // 생성자 본문
    }
};

초기화 리스트와 생성자 본문

멤버 이니셜라이저 리스트는 생성자의 본문 이전에 오며, 멤버 변수의 초기화에 사용됩니다.

정적 멤버 변수의 초기화

정적 멤버 변수(static member variable)는 클래스 외부에서 선언 및 초기화해야 합니다.

class MyClass {
public:
    static int count;
};

int MyClass::count = 0;  // 초기화

이외에도 C++에서는 다양한 초기화 기법과 특징이 제공됩니다.

이상으로 C++ 클래스의 초기화에 대해 알아보았습니다.

참고: cplusplus.com - Constructors and member initializer lists