디폴트 생성자가 사라지는 경우

2019. 8. 21. 01:07PL/C++

디폴트 생성자는 클래스 객체가 생성될 때, 자동적으로 생기게 된다. 하지만 오버로딩된 다른 생성자를 만들게 되면, 재정의하지 않는 이상 기본 생성자 호출은 끊어진다.

 

#include <iostream>

using namespace std;

class Data {
private:
	int dt;
public:
	Data(int dt) : dt(dt) {}
	void show() {
		cout << dt << '\n';
	}
};

int main(void) {
	Data d1;	// 컴파일 오류
	d1.show();
	return 0;
}