VS Code 上的简单 GDB C++ 调试失败并出现 NullReferenceException
Simple GDB C++ debugging on VS Code fails with a NullReferenceException
我的来源file.cpp
:
#include <iostream>
using namespace std;
int main()
{
int x = 1;
int y = 2;
cout << x + y << endl;
return 0;
}
我使用g++ -g file.cpp
编译它,然后我的launch.json
文件是这样的:
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/a.out",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
我的目录结构是:
- workspaceFolder
- .vscode
- launch.json
- a.out
- file.cpp
当我单击调试选项卡中的绿色 "Start debugging" 箭头时,我在调试控制台中收到此错误:
Stopping due to fatal error: NullReferenceException: Object reference not set to an instance of an object
我做错了什么?我查看了所有教程,调试 C++ 似乎适用于所有教程,但我除外。我还安装了 C/C++ (Microsoft) 扩展程序,并且是 运行 Ubuntu 64 位。
我遇到了同样的问题,不知道为什么,但是将 launch.json
中的 "externalConsole"
设置为 false
对我有用。
这个问题是 reported on Microsoft/vscode-cpptools 15 天前的,自 v1.30.0 以来一直在发生,应该在最新的内部人员版本中得到修复。
我的来源file.cpp
:
#include <iostream>
using namespace std;
int main()
{
int x = 1;
int y = 2;
cout << x + y << endl;
return 0;
}
我使用g++ -g file.cpp
编译它,然后我的launch.json
文件是这样的:
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/a.out",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
我的目录结构是:
- workspaceFolder
- .vscode
- launch.json
- a.out
- file.cpp
当我单击调试选项卡中的绿色 "Start debugging" 箭头时,我在调试控制台中收到此错误:
Stopping due to fatal error: NullReferenceException: Object reference not set to an instance of an object
我做错了什么?我查看了所有教程,调试 C++ 似乎适用于所有教程,但我除外。我还安装了 C/C++ (Microsoft) 扩展程序,并且是 运行 Ubuntu 64 位。
我遇到了同样的问题,不知道为什么,但是将 launch.json
中的 "externalConsole"
设置为 false
对我有用。
这个问题是 reported on Microsoft/vscode-cpptools 15 天前的,自 v1.30.0 以来一直在发生,应该在最新的内部人员版本中得到修复。