3

假设我有一些类C,我从它继承并命名这个类D。我是否总是必须调用C的默认构造函数,如下例所示:

class C {
    public:
        C() { ... }
};

class D {
    public:
        D() : C() { ... }
};

请注意,C只有默认构造函数。我必须从 D 调用它吗?我不知道如何找到这个。

谢谢,博达赛多。

4

1 回答 1

11

您不需要在派生类型构造函数的初始值设定项列表中指定基类构造函数。当它被省略时,将尝试调用不带参数的基本构造函数。如果不存在这样的无参数基本构造函数,那么您将收到编译错误。

于 2010-07-05T01:41:14.940 回答