计划:
1.可以实现通过设置lunch.json文件在VScode上进行单步调试
2.可以实现在VScode上用Makefile文件编译
学习记录:
1.mac可以在终端使用code . 用vscode打开文件
2.vscode写c++语言,Code Runner(注:vscode右上的小三角,点击可以编译是Code Runner的功能)不能编译,是因为Code Runner默认不是c++11标准编译,有可能是c++98标准(尚待考究)
解决办法:在.vscode下新建setting.json文件并写:
"code-runner.executorMap": {
"cpp": "g++ $fileName -std=c++14 -o $fileNameWithoutExt && ./$fileNameWithoutExt"
},
由此可见这个setting.json文件可以设置CodeRunner的编译指令。
用快捷建Shift+command+B用clang编译是不会出问题的,这种方法编译可能不受setting.json文件的影响。
但是有个遗留问题:在代码里还是显示向量不能直接赋值的警告,怀疑是代码警告显示插件不能识别向量直接赋值语句,怀疑这个代码警告显示插件不支持c++11编写标准。(已解决:经试验,确实是插件的问题,插件C/C++ Clang Command Adapter提示错误,把插件卸载即可。)
3.tasks.json设置的是clang++的编译步骤,因为用shift+command+B编译用的是clang++,在终端上显示的是tasks.json里写的步骤。
4.新建了lunch.json文件来调试C++总是出错,最终找到问题,但是还不知道原因,解决方法为:
在lunch.json文件把preLaunchTask的属性修改为:
"preLaunchTask": "clang++ build active file"
完成计划情况:
1.可以在mac的vscode上编译、调试c++
2.学会了配置tasks.json、lunch.json、c_cpp_properties.json 三个vscode C++工程配置文件
3.在mac上可以用vscode配置好mpi运行c++工程 参考文章:
https://medium.com/@amithkk/setting-up-visual-studio-code-and-wsl-for-mpi-develoment-8df55758a31c