[c++] 생성자 오버로딩

C++에서 생성자를 오버로딩하는 것은 클래스가 여러 가지 방식으로 초기화될 수 있도록 하는 중요한 기술입니다. 생성자 오버로딩은 생성자에 파라미터를 추가하여 객체를 다양한 방식으로 초기화할 수 있도록 합니다.

생성자 오버로딩의 개념

생성자를 오버로딩하면 동일한 이름을 가진 여러 개의 생성자를 정의할 수 있습니다. 각 생성자는 서로 다른 파라미터 목록을 가지며, 컴파일러는 전달된 인수에 따라 적절한 생성자를 선택합니다.

예제

다음은 생성자를 오버로딩하는 간단한 예제입니다.

class myClass {
  int value;
public:
  // 기본 생성자
  myClass() {
    value = 0;
  }
  // 파라미터가 있는 생성자
  myClass(int v) {
    value = v;
  }
};

위의 예제에서 myClass는 기본 생성자와 하나의 파라미터를 가진 생성자를 오버로딩하고 있습니다. 이를 통해 객체를 myClass obj1; 또는 myClass obj2(10);와 같이 다양한 방식으로 초기화할 수 있습니다.

장점

생성자 오버로딩을 사용하면 동일한 클래스에서 다양한 초기화 방법을 제공할 수 있으며, 유연성과 편의성을 높일 수 있습니다.

요약

생성자 오버로딩은 C++에서 객체를 다양한 방식으로 초기화할 수 있도록 하는 기능으로, 클래스의 유연성을 높여줍니다.