2010-12-16 117 views
2

2D矢量我想我的类包含在形式的二维矢量数组:声明在构造函数中

vector<vector<Node> > Grid(20, vector<Node>(20)); 

当我试图从一个成员函数,像这样获得的:

Grid[10][10] 

我得到错误:

expression must have pointer-to-object type 

如果我在成员函数内部声明了2D矢量,它完美地工作。我必须做什么,在构造函数中拥有它?

+0

我假设你没有试图在构造函数中声明*东西并在成员函数中使用它。您需要在类中声明并在构造函数中进行初始化。 – 2010-12-16 02:35:31

回答

6
class X 
{ 
public: 
    X(); 
    vector<vector<Node> > Grid; 
}; 

X::X() 
    :Grid(20, vector<Node>(20)) 
{ 
} 
相关问题