인프런 커뮤니티 질문&답변

hyunseung.hong님의 프로필 이미지
hyunseung.hong

작성한 질문수

홍정모의 따라하며 배우는 C++

15.3 이동 생성자와 이동 대입

2:08 질문

작성

·

266

0

2:08초에서 10번째 줄 생성자가 default constructor이라고 나오는데, default constructor가 아닌것 같아서 질문 올립니다. default constructor이라면 괄호 안에 인자가 없어야 하는 것이 아닌가요?

답변 2

1

꼭 그런건 아닙니다.

C++에서 디폴트 생성자는 괄호가 없어도 되고, 있어도 됩니다.

아래 코드는 괄호 (인자) 있는 default constructor입니다.

class Example
{
public:
    Example(int x = 0) : value(x) {}

private:
    int value;
};

int main()
{
    Example ex1;     
    Example ex2(42); 
    return 0;
}

0

아 저렇게 인자에 default 값을 넣어주는 건("Example(int x = 0)")

default constructor와 같이 작동 할 수 있다는 말씀이신건가요?

Example(int x) 와 같은 생성자는 default constrcutor가 불가능 하고

hyunseung.hong님의 프로필 이미지
hyunseung.hong

작성한 질문수

질문하기