GDB在带有struct

时间:2017-01-03 02:32:47

标签: c++ c++11 debugging gdb g++

我正在运行GCC 6.2版和GDB版本7.12。我使用带有Codeblocks的MSYS2中的Mingw在Windows 10上运行。当我尝试运行以下测试样本时,GDB表示weird_variable在此范围内不可用。

#include <iostream>
#include <vector>
#include <utility>
#include <unordered_map>
#include <string>
#include <algorithm>
#include <string>
#include <unordered_set>
using namespace std;
struct PathPair{
    int start = -1;
    int end = -1;
    int time = -1;
};
std::unordered_map<std::string, PathPair> weird_variable;
int main()
{
    PathPair p;
    p.start = 55;
    p.end = 100;
    p.time = 550;
    weird_variable["I"] = p;
    std::cout << weird_variable["I"].end;
    return 0;
}

我确实有-g选项,我还试过其他一些像-g3这样的选项。 Codeblocks运行的确切命令是:

g++.exe -Wall -fexceptions -g -Wall -std=c++11 -m64 -g -IE:\msys2\mingw64\bin -IE:\msys2\mingw64\lib -c E:\codeblocksworkspace\TEST\main.cpp -o obj\Debug\main.o
g++.exe  -o bin\Debug\TEST.exe obj\Debug\main.o  -m64  
Output file is bin\Debug\TEST.exe with size 706.11 KB

但是,当我逐行逐步调试调试器中的代码时,仍然不能使用&#34;。有没有什么办法可以让我每次看到它时都看不到它?任何人都可以重现这个吗?

0 个答案:

没有答案