我搜索过这个但是找不到任何东西 . 如果它是愚蠢的,我将毫无问题地结束我的问题 . 我在VSCODE中有一个c_cpp_properties.json配置文件
{
"configurations": [
{
"name": "Mac",
"includePath": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
],
"defines": [],
"intelliSenseMode": "clang-x64",
"browse": {
"path": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
},
{
"name": "Linux",
"includePath": [
"/usr/include/x86_64-linux-gnu/c++/5",
"/usr/include/c++/5",
"/usr/local/include",
"/usr/include/x86_64-linux-gnu",
"/usr/include",
"${workspaceRoot}"
],
"defines": [],
"intelliSenseMode": "clang-x64",
"browse": {
"path": [
"/usr/include/x86_64-linux-gnu/c++/5",
"/usr/include/c++/5",
"/usr/local/include",
"/usr/include/x86_64-linux-gnu",
"/usr/include",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
},
{
"name": "Win32",
"includePath": [
"C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/include",
"${workspaceRoot}"
],
"defines": [
"_DEBUG",
"UNICODE"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/include/*",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
}
],
"version": 2
}
我正在开发Ubuntu 16.04 . 我面临的问题是当我输入我的.cpp文件时,intellisense的标头不起作用 .
MyFooClass.h
#pragma once
#include <cstddef>
#include <fstream>
#include <string>
class MyFooClass
{
private:
//My private fields
public:
MyFooClass();
virtual ~MyFooClass();
bool MyFooFunction();
};
当我使用时实现MyFooClass.cpp
#include "MyFooClass.h"
Intellisense不适用于.h中的函数和数据 . 在我看来,默认情况下应该在我的配置中启用它,但我不知道是否必须添加新内容 . 非常感谢你 .
1 回答
如果您仍然感兴趣或有任何人使用Google在此主题中遇到错误:
VSC有两个不同的引擎用于自动完成 . 1.遗留的“Tag Parser”2. IntelliSense引擎
后者是此时的默认值,"Tag Parser"是后备解决方案 . 如您所愿,两者都在
c_cpp_properties.json
中配置 . 递归搜索browse
中的路径并仅由Tag Parser使用,而includePath
中的路径不会被递归搜索并由IntelliSense引擎使用 .鉴于您的 Headers
MyFooClass.h
不是直接位于根文件夹而是位于子文件夹include
中,您必须将"${workspaceRoot}/include"
添加到includePath
才能使智能感知代码完成 .现在他们有更好的文档:https://github.com/Microsoft/vscode-cpptools/blob/master/Documentation/LanguageServer/c_cpp_properties.json.md