c – 如何使用成员的非默认构造函数?

前端之家收集整理的这篇文章主要介绍了c – 如何使用成员的非默认构造函数?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有两堂课
class a {
    public:
        a(int i);
};

class b {
    public:
        b(); //Gives me an error here,because it tries to find constructor a::a()
        a aInstance;
}

我如何得到它,以便aInstance被实例化(int i),而不是尝试搜索一个默认的构造函数?基本上,我想控制从b的构造函数调用a的构造函数.

解决方法

您需要在构造函数初始化程序列表中显式调用(int):
b() : aInstance(3) {}

其中3是您要使用的初始值.虽然可以是任何int请参阅有关订单和其他注意事项的重要说明的意见.

猜你在找的C&C++相关文章