Ubuntu 下使用 vscode 打开 C++ 项目后,无法通过 F12 定位到定义问题解决

快捷键:Ctrl+Shift+P → 输入:C/C++: Edit Configurations (JSON) 会在项目 .vscode/ 生成配置文件,下面给一份 Ubuntu 通用模板:

复制代码
{
    "version": 4,
    "configurations": [
        {
            "name": "Linux",
            "compilerPath": "/usr/bin/g++",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "linux-gcc-x64",
            "includePath": [
                "${workspaceFolder}/**",
                "${workspaceFolder}/your_own_include",  // 你的项目头文件目录
                "/usr/include/**",
                "/usr/include/c++/**"
            ],
            "browse": {
                "path": [
                    "${workspaceFolder}",
                    "${workspaceFolder}/your_own_include"  // 这里也要加!!
                ],
                "limitSymbolsToIncludedHeaders": false
            }
        }
    ]
}

重点说明

  • "${workspaceFolder}/**":递归扫描项目所有目录(/** 代表递归,只写 /* 不递归)Visual Stu...
  • 如果你的项目有第三方库(如 opencv、eigen),把库的 include 目录加到 includePath
  • intelliSenseMode:用 gcc 就填 linux-gcc-x64;用 clang 则是 linux-clang-x64,不能乱
  • 改完配置后必须执行: Ctrl+Shift+P → C/C++: Reset IntelliSense Database,然后完全关闭 VSCode,重新打开项目文件夹(不是只重新加载窗口)
相关推荐
wuminyu1 小时前
JVM规范学习总结:class执行性能差异
java·linux·c语言·jvm·c++
旖旎夜光1 小时前
LCR 170:交易逆序对的总数(归并排序) —— 题解
c++·学习·算法·leetcode·排序算法
C++ 老炮儿的技术栈1 小时前
Linux 动态库踩坑:明明重新编译了 .so,调用函数返回值却一直不变(libfjrobot.so 版本号异常排查实录)
linux·c语言·网络·c++·visual studio
dtq042411 小时前
C++小案例 - 日志实战
开发语言·c++
码匠许师傅11 小时前
【C++三方组件】Qt 概览:桌面 C++ 的事实标准与许可证三轨
开发语言·c++·qt
码匠许师傅12 小时前
【C++三方组件】POCO:跨平台系统编程全家桶
开发语言·c++
WBluuue15 小时前
数据结构与算法:分块(一):块状数组、块状链表
数据结构·c++·算法·链表
必须得开心呀16 小时前
字节序大小端科普
c++·程序人生
会编程的小孩17 小时前
C++ 子集
c++