C++ 声明后初始化类外的数组

C++ 声明后初始化类外的数组,c++,arrays,initialization,C++,Arrays,Initialization,例如: const int m = 10; class C{ public: double A[m]; }; int main(){ C name; name.A[m] = ... // initializing here? } 我找不到解决这个问题的方法,比如我可以 C name = {...}; 这将非常有效,但出于功能考虑,我想知道是否可以对类中的单个变量执行此操作。在您的示例中,您只需要编写: name.A[x]=value; 其中值为双精度且x介于0

例如:

const int m = 10;
class C{
public:
   double A[m];
};
int main(){
    C name;
    name.A[m] = ...  // initializing here?
}
我找不到解决这个问题的方法,比如我可以

C name = {...};

这将非常有效,但出于功能考虑,我想知道是否可以对类中的单个变量执行此操作。

在您的示例中,您只需要编写:

   name.A[x]=value;

其中
双精度
x
介于0和9之间。如果您希望为其所有或部分元素设置值,也可以创建一个循环。

除了在main的第2行中创建一个循环外,没有其他方法。您不再进行初始化。
name.A[m]=
将调用UB