如何在C ++中初始化成员的构造函数参数

哑巴

我有以下代码(头文件):

class InnerClass
{
    InnerClass(int var);
}

class BigClass
{
    BigClass();
    InnerClass member(5);
}

如何将BigClass中member的参数初始化为5(您可能猜到了,上面的代码会产生错误)?如果我将InnerClass member(5)行放入代码(而不是标头)文件中,则没有问题。

songyuanyao

您可以BigClass::member通过类大括号或相等的初始化程序(自c ++ 11起)来初始化成员变量

InnerClass member{5};

成员初始化器列表

class BigClass
{
    InnerClass member;
public:
    BigClass() : member(5) {}
    // or... BigClass(int var) : member(var) {}
}

顺便说一句:我认为的构造函数InnerClass应该是公共的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

C ++使用构造函数参数初始化成员数组

C ++:在constexpr构造函数中初始化成员数组

构造函数是否必须在C ++中初始化成员变量?

C++ 如何使用隐藏的默认构造函数初始化成员?

如何访问初始化函数中不是成员变量的构造函数参数?

如何在Go结构中初始化成员

c ++构造函数成员初始化:传递参数

当初始化列表中的参数不可用时,如何初始化成员对象?

在构造函数中初始化成员

C++ 构造函数中的成员初始化语法

如何在构造函数中初始化C ++对象成员变量?

在C ++中的自定义类的构造函数中初始化没有参数的静态const类成员

在Dart中的可选参数构造函数中使用构造函数初始化成员

如何在Objective C的参数化构造函数中初始化NSDate?

如何在构造函数的成员初始化器列表中调用两个函数?

如何使用std :: array构造函数参数C ++列表初始化const std :: array成员

如何通过参数初始化构造函数中的数组?

C ++初始化成员数组

如何在派生类构造函数中初始化基类成员变量?

如何在SML状态或状态机中添加/初始化成员?

如何从构造函数参数初始化模板成员数组?

如何在继承类之前初始化成员变量

如何使用给定的长度作为对象参数初始化成员数组

如何在C ++ 11中初始化未初始化其构造函数中所有成员的类

C ++初始化程序列表功能:调用函数而不初始化成员吗?

当类构造函数具有参数时,如何在Java中初始化数组?

如何在工厂方法中初始化具有多个参数构造函数的类

c ++在成员初始化中,在构造函数中传递新对象

Java Mockito-如何模拟在构造函数中初始化的私有成员