C++ 如何在c+;中初始化大量静态类+;
我有头球C++ 如何在c+;中初始化大量静态类+;,c++,C++,我有头球 Class A { int var_1; int var_2; }; Class b { private: static A var[MAX]; ..... }; 但是如何在header.cpp中初始化此属性 提供一个默认构造函数,将int设置为0s或其他值 ab::var[MAX]={}假设存在不带参数的公共构造函数(或默认构造函数)的类A: 文件b.h: 文件b.cpp: 在实现文件中: A b::var[] = {}; // static member definition
Class A
{
int var_1;
int var_2;
};
Class b
{
private: static A var[MAX];
.....
};
但是如何在header.cpp中初始化此属性 提供一个默认构造函数,将int设置为0s或其他值
ab::var[MAX]={}代码>假设存在不带参数的公共构造函数(或默认构造函数)的类A
:
文件b.h:
文件b.cpp:
在实现文件中:
A b::var[] = {}; // static member definition
// A() is called for each member so you might want
// to implement it
例如:
#define MAX 10
class A
{
int var_1;
int var_2;
};
class b
{
private:
static A var[MAX]; // static member declaration
};
A b::var[] = {}; // static member definition
int main() {
return 0;
}
正确吗?你有什么不合适的开始吗?什么样的命名是“header.cpp”?!
A b::var[] = {}; // static member definition
// A() is called for each member so you might want
// to implement it
#define MAX 10
class A
{
int var_1;
int var_2;
};
class b
{
private:
static A var[MAX]; // static member declaration
};
A b::var[] = {}; // static member definition
int main() {
return 0;
}