C++ 无法启动结构中的阵列

C++ 无法启动结构中的阵列,c++,class,C++,Class,当我在main中创建一个对象时,它会将SIN设置为0,但不会对数组执行相同的操作。有人能帮个忙吗?tax[4]={0}在许多级别上都是错误的。。 初始化Lizie课程的一种方法: class CRA_Account { int tax[4]; double refund[4]; int SIN; public: CRA_Account(); } CRA_Account::CRA_Account() { SIN = 0; tax[4] =

当我在main中创建一个对象时,它会将SIN设置为0,但不会对数组执行相同的操作。有人能帮个忙吗?

tax[4]={0}在许多级别上都是错误的。。
初始化Lizie课程的一种方法:

class CRA_Account {
    int tax[4];
    double refund[4];
    int SIN;
 public:
    CRA_Account();
 }

 CRA_Account::CRA_Account() {
     SIN = 0;
     tax[4] = { 0 };
     refund[4] = { 0 };
 }


尝试查看不可分配的数组。使用初始值设定项列表构造属性。这里所做的是一个赋值,它不适用于数组。在这里,构造函数体前面以冒号开头的部分称为1)使用初始值设定项列表。2) 有
std::fill
。3) 为什么不是一个有效的
std::array
?@caninoos。谢谢
CRA_Account::CRA_Account():
   tax{0,0,0,0},
   refund{0,0,0,0},
   SIN{0}{
}