디폴트 생성자는 매개변수가 없다고 하더라구요. 매개변수 있는 생성자를 정의하고, 매개변수 없는 생성자를 정의 할려면 어떻게 해야 하는지요?
매개변수가 있는 생성자를 정의하려면 클래스명(매개변수) {...} 형태의 생성자를 선언 및 정의해주시면 됩니다. Widget이라는 클래스를 예시로 설명드리면 아래와 같습니다.
class Widget { Widget(int parameter) { ... // 생성자 구현사항 } }
디폴트 생성자는 매개변수가 없다고 하더라구요.
정확히는, function parameter pack이 아닌 모든 parameter에 default argument가 있는 생성자를 의미합니다.
"매개변수 없이 호출할 수 있는" 생성자라고 표현하는 것도 괜찮겠네요.
class Widget { Widget(int parameter = 42) // 매개변수를 받을 수도 있지만 default constructor이기도 함. { ... // 생성자 구현사항 } }
네 디폴트 생성자는 매개변수가 없습니다.
매개변수가 있는 생성자를 정의하려면 클래스명(매개변수) {...} 형태의 생성자를 선언 및 정의해주시면 됩니다.
Widget이라는 클래스를 예시로 설명드리면 아래와 같습니다.
class Widget { Widget(int parameter) { ... // 생성자 구현사항 } }매개변수가 있는 생성자를 선언하는 경우 디폴트 생성자는 생겨나지 않습니다.
디폴트 생성자와 매개변수를 받는 생성자 모두 정의하시면 두 생성자 모두 사용할 수 있습니다.
Quote:디폴트 생성자는 매개변수가 없다고
정확히는, function parameter pack이 아닌 모든 parameter에 default argument가 있는 생성자를 의미합니다.
"매개변수 없이 호출할 수 있는" 생성자라고 표현하는 것도 괜찮겠네요.