Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/146.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;-未设置静态2d向量_C++_Vector_2d Vector - Fatal编程技术网

C++ C++;-未设置静态2d向量

C++ C++;-未设置静态2d向量,c++,vector,2d-vector,C++,Vector,2d Vector,我有一个静态的二维向量,我正试图在构造函数中使用它。代码如下: 在Stage.h #pragma once class Stage { public: Stage(); virtual ~Stage(); private: typedef std::vector<std::vector<int>> tileMap; static tileMap testStageTiles; }; 用Stage\u Stage实例化类 但是,它

我有一个静态的二维向量,我正试图在构造函数中使用它。代码如下:

Stage.h

#pragma once

class Stage
{
public:
    Stage();
    virtual ~Stage();    
private:
    typedef std::vector<std::vector<int>> tileMap;
    static tileMap testStageTiles;
};
Stage\u Stage实例化类


但是,它总是打印为0,只是想知道为什么我不能实例化这个向量?

工作正常。请提供一个。我怀疑在另一个翻译单元中有一个全局
Stage
对象,它恰好是在静态init顺序失败的
Stage::testStageTiles
之前构造的。啊,我相信你是对的。“我会调查的。”船长很抱歉,V是Verifiable@MattMcNabb直接从复制/粘贴-向SO投诉。
Stage::Stage()
{
    std::cout << Stage::testStageTiles.size() << std::endl;
}

Stage::~Stage()
{
}

Stage::tileMap Stage::testStageTiles = {
    {1,1,1,1,1,1},
    {1,0,0,0,0,1},
    {1,0,0,0,0,1},
    {1,0,0,0,0,1},
    {1,0,0,0,0,1},
    {1,1,1,1,1,1}
};