我不确定如何将数组变量与对象一起使用。如何在创建对象时初始化数组。一个数组,它是对象的数据成员。
我希望使用初始化列表。
答案 0 :(得分:4)
如果您的编译器支持它,您可以这样做:
struct Foo
{
int n[5];
Foo() :n{1,2,3,4,5} {}
};
很快,这将是标准的。 GCC现在支持它,我不确定其他编译器是做什么的。
答案 1 :(得分:2)
数组成员变量只能默认初始化,不能提供显式初始化值。
struct Foo {
Foo() : bar() {} // Default-initialize bar, for int this means initialize with 0
int bar[10];
};
如果您还需要其他任何内容,则必须在构造函数体中进行分配。
struct Foo {
Foo() : bar() {
bar[3] = 1;
}
int bar[10];
};