C++ 在类定义中 为什么不可以把 vector< vector <int> > vec 写为static ?求高人指点多谢!在线等@

2025-02-24 20:51:40
推荐回答(2个)
回答1:

这个错误明显是因为变量只声明没有定义嘛..
class a
{
static vector< vector > vec ;
};
vector> a::vec; // 必须要加上定义.

楼上的之所以没有错误是因为他的代码中没有使用vec这个变量, 对于没有使用的变量连接器会忽略它, 所以即使不定义也没有关系, 但是只要用到了就会出现错误..

回答2:

可以啊,我用vc2010和dev c++试了下,没有问题啊,你用什么编译器啊

#include
#include
using namespace std;
class a
{
static vector< vector > vec ;
};
int main()
{
a aa1;
return 0;
}