Cha*_*ith 7 c++ visual-studio-code
使用 VScode,如何修复此错误?
#pragma once in main file [-Wpragma-once-outside-header]
Run Code Online (Sandbox Code Playgroud)
更新: 在 VScode 中显示:
再次更新:
这是我当前的 VScode 设置c_cpp_properties.json
{
"configurations": [
{
"name": "Mac",
"includePath": ["${workspaceFolder}/**"],
"defines": [],
"macFrameworkPath": [
"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks"
],
"compilerPath": "/usr/bin/clang",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64"
}
],
"version": 4
}
Run Code Online (Sandbox Code Playgroud)
小智 2
鉴于没有答案,并且考虑到我也花了一些时间试图解决这个问题,所以就这样吧。
在 Visual Studio Code 中,编译设置默认在tasks.json中构建(“终端”>“配置默认构建任务”>“g++.exe () ”)。在 VS Code 2020 中是这样的:
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "g++.exe build active file",
"command": "C:\\Program Files (x86)\\mingw-w64\\i686-8.1.0-posix-dwarf-rt_v6-rev0\\mingw32\\bin\\g++.exe",
"args": [
"-g",
"${workspaceFolder}\\*.cpp",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:\\Program Files (x86)\\mingw-w64\\i686-8.1.0-posix-dwarf-rt_v6-rev0\\mingw32\\bin"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
Run Code Online (Sandbox Code Playgroud)
}
(我使用 mingw-64 来支持gcc编译器,因此根据您使用的编译器,“command”和“cwd”可能有不同的路径。)
关键部分是:“${file}”,它是编辑器中活动文件(活动选项卡)的名称。
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
Run Code Online (Sandbox Code Playgroud)
如果您正在处理多个文件,至少有一个标头(.h 或 .hpp)和一个主文件(.cpp),VS Code 会将该活动文件(.h 或 .hpp)视为主文件(.cpp)。 cpp)。因此,您需要将其更改为:"${workspaceFolder}\*.cpp"。
"args": [
"-g",
"${workspaceFolder}\\*.cpp",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8135 次 |
| 最近记录: |