首页 > 解决方案 > 我怎么知道我是在开发 c++/cx 还是 c++/WinRT UWP 应用程序?

问题描述

我正在创建一个 c++ UWP 应用程序,我希望这个应用程序是 c++/WinRT,因为我读到不再支持 c++/cx。
这就是我创建应用程序的方式。
VS 2017 -> File -> New -> Project... -> Visual C++ -> Windows Universal -> Blank App (Universal Windows)

对于这个基本问题我很抱歉,但我无法确定我的应用程序是否是c++/WinRT 与否。

标签: c++uwpc++-cxc++-winrt

解决方案


C++/CX 和 C++/WinRT 不会生成不同的应用程序类型。即使不再支持 C++/CX(现在仍然支持),使用 C++/CX 编译的应用程序仍将继续运行。C++/CX 是纯粹的语言级编译器设置,可以像 C++/WinRT 一样生成本机代码。

您可以通过设置/ZW(Windows 运行时编译)编译器选项来选择加入 C++/CX 。如果该编译器选项不存在,则说明您没有使用 C++/CX。空白应用 (C++/WinRT)项目模板(安装C++/WinRT Visual Studio 扩展后可用)未设置 /ZW 编译器选项。另一方面,空白应用程序 (Windows Universal) 确实设置了 /ZW 编译器选项


推荐阅读