【发布时间】:2013-03-06 23:25:21
【问题描述】:
通常结构的成员变量的初始化将在其构造函数中进行
struct line
{
line()
{
length=0;
name[0] = '\0';
}
int length;
char name[10];
};
但是如何将二维数组初始化为 0 或空值?
struct myValues
{
myValues()
{
my2dDimension[0][0] = { 0 }; //shows error:expected an expression
}
int my2dDimension[20][2];
}
如果我不初始化它们,它们将包含我不想要的垃圾值。
【问题讨论】:
-
错误告诉你,你已经将
my2dDimension定义为int,而不是二维数组。 -
您将 my2dDimension 声明为 int 而不是二维数组。
-
抱歉我忘了提
my2dDimension[20][2]; -
首选 std::vector > 除非您有充分的理由使用原始数组。它会自行初始化。
标签: c++ multidimensional-array constructor struct