C ++ push_back 2d deque

时间:2016-03-21 22:12:57

标签: c++ data-structures deque

我想在C ++中使用我的2d deque的第一个维度,但参数不正确。

struct storingDataStruct{
    int posX;
    int posY;
};

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

1 个答案:

答案 0 :(得分:4)

应该是:

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

你正在构建一个deque<storingDataStruct>,所以你需要的就是构建一个实例。

如果您使用typedef,则可能会更加明显:

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