我怎么知道我是在开发 c++/cx 还是 c++/WinRT UWP 应用程序?
How could I know if I'm developing a c++/cx or c++/WinRT UWP application?
我正在创建一个 c++ UWP 应用程序,我希望这个应用程序是 c++/WinRT,因为我了解到不再支持 c++/cx。
这就是我创建应用程序的方式。
VS 2017 -> 文件 -> 新建 -> 项目... -> Visual C++ -> Windows 通用 -> 空白应用程序(通用 Windows)
对于这个基本问题,我很抱歉,但我无法确定我的应用程序是否是 c++/WinRT。
C++/CX 和 C++/WinRT 不会生成不同的应用程序类型。即使不再支持 C++/CX(现在仍然如此),使用 C++/CX 编译的应用程序仍将继续 运行。 C++/CX 纯粹是一种语言级别的编译器设置,可以像 C++/WinRT 一样生成本机代码。
您通过设置 /ZW (Windows Runtime Compilation) compiler option. If that compiler option isn't present, you aren't using C++/CX. The Blank App (C++/WinRT) project template (available after installing the C++/WinRT Visual Studio extension) 未设置 /ZW 编译器选项来选择加入 C++/CX。另一方面,空白应用程序(Windows 通用) 确实设置了 /ZW 编译器选项。
我正在创建一个 c++ UWP 应用程序,我希望这个应用程序是 c++/WinRT,因为我了解到不再支持 c++/cx。
这就是我创建应用程序的方式。
VS 2017 -> 文件 -> 新建 -> 项目... -> Visual C++ -> Windows 通用 -> 空白应用程序(通用 Windows)
对于这个基本问题,我很抱歉,但我无法确定我的应用程序是否是 c++/WinRT。
C++/CX 和 C++/WinRT 不会生成不同的应用程序类型。即使不再支持 C++/CX(现在仍然如此),使用 C++/CX 编译的应用程序仍将继续 运行。 C++/CX 纯粹是一种语言级别的编译器设置,可以像 C++/WinRT 一样生成本机代码。
您通过设置 /ZW (Windows Runtime Compilation) compiler option. If that compiler option isn't present, you aren't using C++/CX. The Blank App (C++/WinRT) project template (available after installing the C++/WinRT Visual Studio extension) 未设置 /ZW 编译器选项来选择加入 C++/CX。另一方面,空白应用程序(Windows 通用) 确实设置了 /ZW 编译器选项。