Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio code VSCode-从IntelliSense解析中排除特定文件夹/文件_Visual Studio Code_Intellisense - Fatal编程技术网

Visual studio code VSCode-从IntelliSense解析中排除特定文件夹/文件

Visual studio code VSCode-从IntelliSense解析中排除特定文件夹/文件,visual-studio-code,intellisense,Visual Studio Code,Intellisense,我对C/C++intelliSense解析有问题。当一个文件中描述的函数声明与另一个文件中的typedef使用的名称相同时。 说明: 图像我们有文件夹和文件的下一个结构: 文件dir1/f1.h包含: typedef int func1; void func1(void); #include "f1.h" void func1(void) { // do something } #include "f1.h" int main(void)

我对C/C++intelliSense解析有问题。当一个文件中描述的函数声明与另一个文件中的typedef使用的名称相同时。 说明: 图像我们有文件夹和文件的下一个结构:

文件dir1/f1.h包含:

typedef int func1;
void func1(void);
#include "f1.h"

void func1(void) {
   // do something
}
#include "f1.h"

int main(void) {
    func1();
}
文件dir2/f1.h包含:

typedef int func1;
void func1(void);
#include "f1.h"

void func1(void) {
   // do something
}
#include "f1.h"

int main(void) {
    func1();
}
文件dir2/f1.c包含:

typedef int func1;
void func1(void);
#include "f1.h"

void func1(void) {
   // do something
}
#include "f1.h"

int main(void) {
    func1();
}
main.c文件包含:

typedef int func1;
void func1(void);
#include "f1.h"

void func1(void) {
   // do something
}
#include "f1.h"

int main(void) {
    func1();
}
当我使用go to definition命令时,IntelliSense会转到dir1/f1.h文件,因为最后打开的文件是dir1/f1.h。如果最后打开的文件是dir2/f1.h,IntelliSense将跳转到dir2/f1.h或dir2/f1.c

我想知道如何将dir1或dir1/f1.h从IntelliSense解析中排除,而不是从工作区和搜索结果中排除?所以我需要下一步:

  • IntelliSense忽略/不分析dir1或dir1/f1.h
  • 工作区视图中存在dir1和dir1/f1.h
  • 搜索者不忽略dir1/f1.h

你有没有找到答案?我正在重写一些代码,希望旧代码可以查看以供参考,但是如果我把它放在同一个根目录中(使用依赖项库等),intellisense会对include做各种疯狂的事情,即使它是我正在处理的文件中的几个目录。我希望将其从Intellisense中排除,但仍然能够访问和查看同一工作区中的文件。(当时我把它放在一个单独的根目录中,只运行两个窗口,但这是次优的。)嗨@dwllama,我没有找到答案或任何方便的解决方法。我想我需要在vscode github社区中创建一个功能票证。