Visual Studio 2015 .cpp文件中的智能感知#作为头文件包含
Visual Studio 2015 IntelliSense in .cpp files #included as headers
在我的项目中,我有一个主cpp文件,任何其他文件都从构建中排除,我从主cpp文件中包含它们以创建一个翻译单元。这在VS 2013中工作得很好,但是我在2015年遇到了问题,在其他cpp文件中定义的构建显示类型中没有包含任何cpp文件,其中有红色错误。项目构建良好,我可以F12类型定义,但类型不出现在智能感知中,并显示为错误。
有没有人知道这是一个已知的问题,或者可以复制它-或者它是特定于我的设置?
例如main.cpp
struct Foo
{
int Bar;
};
#include "Test.cpp"
int main()
{
Foo x = Test();
return 0;
}
和Test.cpp,它被排除在使用VS UI的构建之外。
Foo Test()
{
Foo x;
x.Bar = 2;
return x;
}
这样构建,但是智能感知不会从Test.cpp中显示Foo,并且会在Foo下显示红色错误。
我可以在Visual Studio 2015中复制您的问题。
从构建中排除这些文件并不能达到您想要的效果。由于您正在有效地使用这些.cpp
文件作为头文件,因此您需要将其指示给IntelliSense。
在这些文件的属性中,将Excluded From Build
设置为<inherit from parent or project defaults>
,将Item Type
设置为C/C++ header
(记住在顶部选择All Configurations
和All Platforms
)。
在这一点上,弯弯曲曲仍然在那里。保存并关闭解决方案,然后删除解决方案的.sdf
文件(它将自动重新创建)。重新打开解决方案,享受没有乱画的乐趣。
相关文章:
- AcquireCredentialsHandleA() 返回 PFX 文件的0x8009030e(安全包中没有可用的凭据
- 禁止显示有关包含文件中 #pragma 包的警告
- 选择特定版本的 Visual Studio 命令行工具包,并根据特定版本的C++运行时环境编译文件
- 如何使用 AWS C++ 开发工具包在给定的开始和结束日期范围内列出 S3 中的文件
- 如何链接我自己的 .so 文件而不是操作系统捆绑包 .so 文件?
- 使用开发工具包将文件上传到 AWS C++
- TCP-Server以数据包结构(非Java客户端)发送文件
- 致命错误 C1083:无法打开包含文件:'atlbase.h' Pyinsane 包
- 可视化 将 TCP 服务器数据包保存到 C++ 中的文件
- Buildroot 包需要一个带有C++大文件错误的工具链
- 获取包含C++的捆绑包中文件的路径(CFBundleGetMainBundle)
- 我在C++文件中的简单代码块上有 2 个错误。错误 C2059:语法错误:"?"。第二智能感知:预期表达式。怎么了?
- 数据包大小(每数据包 mBytes)或核心音频中 AAC 文件的比特率
- CMake 包配置文件中的泛型"transitive behavior" (find_dependency)
- Visual Studio 14.0 和 Windows 工具包中的错误包括文件夹
- 参数包感知标准::is_base_of()
- 获取 PCAP 文件中数据包的 IP 地址
- 如何在 C++ 中读取 PCAP 文件以获取数据包信息
- 如何在C++中分析来自流量转储文件的数据包信息
- 如何在visual studio 2010 C++中制作带有所需.dll和lib(opencv)文件的.exe文件包