struct zaidejas {
int numeris;
int aiksteleje;
bool penketas;
};
int main(){
zaidejas z[12];
z = {};
}
我在z = {}:
行中出错error: assigning to an array from an initializer list
我不知道如何修复错误。我真的很感激任何帮助。
答案 0 :(得分:4)
您无法分配数组,只能在定义数组时对其进行初始化,或者在定义数组后将其复制到数组中。
我建议初始化:
zaidejas z[12] = {};
答案 1 :(得分:2)
在C ++ 11中,您可以按如下方式初始化数组:
zaidejas z[12]{};
如果要初始化数组的单个元素,可以使用:
z[0] = zaidejas{};
这是早期版本的C ++中可用的(基于构造函数的)初始化的聚合等效项
z[0] = zaidejas();
答案 2 :(得分:1)
你应该写
zaidejas z[12] = {};
// ^^^^
这将对所有数组元素进行值初始化,这反过来将对每个元素的类数据成员进行零初始化。
答案 3 :(得分:1)
如何将整个结构设置为null?
像这样:
zaidejas z = {};
对于你的阵列,你应该这样做:
zaidejas z[12] = {};
答案 4 :(得分:0)
你有12个元素。如果要将所有这些设置为null,请执行以下操作
int main(){
int number_elements = 12;
zaidejas z[number_elements ];
for (int i = 0; i < number_elements ; z++) z[i] = {}
}