c++ - Visual Studio _MSC_VER 与平台工具集

标签 c++ visual-studio

我有一个导入到 VS 2015 中的 VS 2010 C++/CLI 项目。因为它链接到我无法控制的一些 VS 2010 C++ 库,所以我需要使用 VS 2010 编译器对其进行编译。当我将项目导入 VS 2015 时,我告诉 VS 不要升级项目(不记得确切的选项,但项目现在在解决方案资源管理器中显示“项目名称(Visual Studio 2010)”)。在项目属性中,平台工具集列为“Visual Studio 2010 (v100)”:

Visual Studio Project Properties window showing Visual Studio 2010 (v100) selected for Platform Toolset

我使用的其中一个库有一个带有一些 ifdef 的 header ,如果 _MSC_VER 不是受支持的版本之一 (Visual C++ 6.0-10.0),它会显示错误。该项目正在生成该错误,我已确定在 Intellisense 中 构建期间 显示的 _MSC_VER 是 1900(VS 2015 的默认值)。

如何使用 2010 版 C++ 编译器 (_MSC_VER 1600) 构建项目?这不是平台工具集选项应该控制的吗?

最佳答案

我误解了 Visual Studio 中发生的事情。该构建实际上运行良好;生成的错误来自 Intellisense。有一个 known bug在 Visual Studio 中,Intellisense 无法正确反射(reflect)项目所选平台工具集指定的 _MSC_VER。我会留下这个问题,以防其他人遇到这个问题。

关于c++ - Visual Studio _MSC_VER 与平台工具集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43762839/

相关文章:

c++ - boost accumulator_set : expect primary expression

c++ - 声明结构表时出现 std::bad_alloc 错误

visual-studio - Cordova:使用 VS 2017 中的 --allow-file-access-from-files 启动 chrome

visual-studio - 如何更改/禁用 Visual Studio 2012 RC 中断点行的突出显示颜色?

c# - 玩家在 Y 轴上不需要的旋转

css - 更改未在服务器上更新

c++ - 具有局部变量初始化延迟的 constexpr 函数

c++ - 具有继承的 friend 类

c# - 人脸识别/合并软件

sql-server - 在 VS2015 SQL Server 数据库项目中通过 UI 创建外键关系