2016-03-21 5 views
0

私の2次元デューキュの最初の次元をC++で使いたいのですが、引数が正しくありません。C++ push_back 2d deque

struct storingDataStruct{ 
    int posX; 
    int posY; 
}; 

deque<deque<storingDataStruct>> dataStorage; 
dataStorage.push_back(new deque<storingDataStruct>); //doesnt work 
+0

は 'new'を削除します。 – aslg

答えて

4

それは次のようになります。

dataStorage.push_back(deque<storingDataStruct>()); 

あなたはdeque<storingDataStruct>を構築しているので、あなたが必要とするすべての場所で、それのインスタンスを構築することです。

あなたがtypedefを使用した場合、それはより明白になることがあります。

typedef std::deque<storingDataStruct> StoringDeque; 
deque<StoringDeque> dataStorage; 
//...  
dataStorage.push_back(StoringDeque()); 
+0

ありがとうございました! – black