我见过与此相关的帖子,但没有与我直接相关的帖子(例如,它们不在Mac上)。
Main.app:
#include <iostream>
using namespace std;
int val = 500;
int main()
{
int val = 200;
cout << "Value of global x is " << ::val;
cout << "Value of local x is " << val;
return 0;
}
Main.cpp:
#include <iostream>
using namespace std;
int val = 500;
int main()
{
int val = 200;
cout << "Value of global x is " << ::val;
cout << "Value of local x is " << val;
return 0;
}
launch.json:https://pastebin.com/UqK9yFWJ
tasks.json:https://pastebin.com/fqMNs3JT
我不确定从这里到哪里,我真的不知道还有什么需要补充的信息。如果您能帮助我,那就太好了。
答案 0 :(得分:0)
有多种方法可以在macOS上设置简单的VSCode进行调试。以下是其中之一,它应该为您指明正确的方向。
首先,您的Main.app是完全错误的。传统上,.app程序是用Objective C或Swift编写的,通常是基于Cocoa的本机macOS应用程序。你没那么做您实质上只是在尝试调试控制台应用程序。该任务的非常基本设置如下
首先是launch.json。这就是告诉VSCode要运行的内容
launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "(lldb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/YourProgramNameHere",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "lldb"
}
]
}
接下来,是task.json。这就是告诉VSCode如何构建代码的原因。
tasks.json
{
"version": "2.0.0",
"tasks": [
{
"label": "Build Project",
"type": "shell",
"command": "clang++",
"args": [
"-g",
"--std=c++14",
"-o",
"YourProgramNameHere",
"main.cpp"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
最后,主要的源文件本身(这里没有什么令人兴奋的地方):
main.cpp
#include <iostream>
int main()
{
std::cout << "Hello, World!\n";
}
总而言之,您可以通过默认热键(假设您尚未更改,即shift-cmd-B)运行构建,或者从命令面板中选择它(shift-cmd-P),然后键入Build
,然后将找到默认的构建命令。这将执行在task.json中定义的构建命令。
要进行调试,请切换到“调试资源管理器”,该资源管理器将通过上面提供的launch.json提供一个名为(lldb) Launch
的启动选项。运行该命令将运行您的程序,并且如果您事先在源文件中建立了断点,则它们将跳闸。
这只是执行此操作的一种方法。还有其他一些事情可能会变得更加复杂,但是对于构建一个包含几个文件的简单项目并对其进行调试,这几乎是最基本的。
希望有帮助。