Visual studio 2012中针对包含系统变量的IntelliSense问题
Facing IntelliSense Issue in Visual studio 2012 for includes with system variable
我将带有多个项目的c++解决方案从VS2010迁移到VS2012。项目引用了路径设置为系统变量的库。
应用程序正在编译并运行。但是Intellisense报告库中所有符号和标头的错误。在解决方案资源管理器的"外部依赖项"节点中,它不显示第三方库的头文件。具有硬编码和相对路径的头文件没有这个问题。
当右键单击Header声明打开头文件时,它会显示项目中通过条带化环境变量值指定的所有路径。例如。如果包含路径为"C:\QT\Includes;..\..\VISLIB\Inc;$(PROBAL_SHT_LIB)\V18.05\Inc",则它将显示消息"在…中找不到文件'XX.h"。。。。。。。生成系统路径:C: \QT\包括;..\。。\VISLIB\Inc公司;\V18.05\neneneba公司。并剥离$(PROBAL_SHT_LIB)。
还注意到,如果我设置了新的系统变量,那么它就不会显示在"宏"中。或者代码未使用VS2012进行编译。使VS2012识别此变量。我需要重新启动电脑
这在VS2010中运行良好。
您应该知道intellisense所使用的前端/解析器与实际编译器所使用的不同。它们并不总是同步更新,而且它们通常具有不同级别的功能完整性和不同的bug。因此,intellisense抱怨真正的编译器处理得很好的完全有效的代码并不罕见。这当然不太好,但这是事实,除了微软之外,没有人能做任何事情
相关文章:
- 如何访问基类向量中的子类变量?(对于实体组件系统)
- 如何设置Qt应用程序以使用类Unix系统的实际环境变量?
- 提供变量作为 MATLAB 系统命令的输入参数,以便C++可执行文件
- 将系统时间与变量进行比较 - C++
- 从系统("command") (C++) 设置变量
- 在系统( " " 中使用C++变量;
- 我们是否需要对多线程 x32 系统使用 lock 来读取或写入 uint32_t 变量
- 通过QT中的信号和插槽系统传递变量
- 从变量字符串中提升文件系统路径
- 如何在系统( "say string variable" )中使用字符串变量?
- C++中的程序如何使用"系统"变量与 Linux 中的 shell 脚本交互?
- 如何将 c ++ 变量的值传递给 hadoop HDFS 的 bash 系统命令?
- 在C++的系统中执行变量(" " )
- 在Boost文件系统中使用环境变量
- Visual studio 2012中针对包含系统变量的IntelliSense问题
- 映射多变量/层系统的泛化
- 将系统(char* 命令)的输出加载到变量 c++
- Wt Dbo MySQL 后端连接错误"SET storage_engine=INNODB;":未知的系统变量'storage_engine'
- 在c++中使用变量作为系统()输入而不使用c_str()
- 代码块编译的exe链接到一个没有系统路径变量(C++)的dll