c++ - 调用构造函数

标签 c++ constructor

假设如下图所示的场景:

Class A : public B
{

private:
C obj
public:
A()

}

Class B
{
B(int , int)
}


Class C
{
C();
C( int , int)
}

有没有一种方法可以在初始化 A 类对象时调用非默认构造函数?

我知道要初始化 B,我可以这样做:

A():B(int, int) //but what if I want to initalise C also?

最佳答案

基类和数据成员都可以出现在初始化列表中:

A() : B(42, 42), obj(42, 42) { }

关于c++ - 调用构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4202274/

相关文章:

c++ - 从构造函数中的 catch block 调用析构函数安全吗?

java - 如何在 Java 中使用用户输入填充构造函数?

java - 构造函数调用错误信息

C++模板结果类型

c++ - const before AND after 函数

c++ - std::string::reserve() 和 std::string::clear() 难题

c++ - 如何避免在这个特定的类层次结构设计中向下转型?

c++ - 在 C++ 中, vector 是按值传递还是通过引用传递给函数

c++ - 仅在 C++ 中声明默认构造函数

c++ - 默认复制构造函数和复制赋值赋值运算符给出奇怪的错误