关于cpp的静态成员
About cpp's static member
Class base{
public :
static vector<int> _elems;
...
我如何使用静态 one.Must 我再次将其定义在 class 主体之外?
或者我遇到了一个错误的麻烦"Undefine reference to 'base::_elems'"
您只声明了静态成员,而没有定义它。在你的 cpp 文件中你需要这样做:
vector<int> base::_elems;
您可以像使用任何其他变量一样使用它。您只需要记住静态变量对于所有实例都是相同的。
编辑:我忘记了防御。您必须定义变量,这可以从任何 cpp 文件完成,但我建议在文件 base.cpp.
中定义变量
Class base{
public :
static vector<int> _elems;
... 我如何使用静态 one.Must 我再次将其定义在 class 主体之外? 或者我遇到了一个错误的麻烦"Undefine reference to 'base::_elems'"
您只声明了静态成员,而没有定义它。在你的 cpp 文件中你需要这样做:
vector<int> base::_elems;
您可以像使用任何其他变量一样使用它。您只需要记住静态变量对于所有实例都是相同的。
编辑:我忘记了防御。您必须定义变量,这可以从任何 cpp 文件完成,但我建议在文件 base.cpp.
中定义变量