2010-12-16 131 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)) 
{ 
} 
相關問題