演练:在命令行上编译 C++/CX 程序
注意
对于新 UWP 应用和组件,建议使用 C++/WinRT,这是 Windows 运行时 API 的 标准 C++17 语言投影。 从版本 1803 (10.0.17134.0) 起,C++/WinRT 在 Windows SDK 中提供。 C++/WinRT 完全在头文件中实现,旨在提供对新式 Windows API 的优先访问权限。
Microsoft C++ 编译器 (MSVC) 支持 C++ 组件扩展 (C++/CX),其中具有面向 Windows 运行时编程模型的其他类型和运算符。 可使用 C++/CX 为通用 Windows 平台 (UWP) 和 Windows 桌面生成应用。 有关详细信息,请参阅 C++/CX 教程和运行时平台的组件扩展。
在此演练中,你将使用文本编辑器创建一个基本的 C++/CX 程序,然后在命令行上对其进行编译。 (可使用你自己的 C++/CX 程序,而非键入显示的程序,或者也可使用来自另一篇帮助文章中的 C++/CX 代码示例。这种技术有助于生成和测试不包含 UI 元素的小模块。)
注意
还可使用 Visual Studio IDE 来编译 C++/CX 程序。 由于 IDE 包含命令行上不可用的设计、调试、仿真和部署支持,因此建议使用 IDE 来生成通用 Windows 平台 (UWP) 应用。 有关详细信息,请参阅在 C++ 中创建 UWP 应用。
先决条件
了解 C++ 语言的基础知识。
编译 C++/CX 程序
若要启用 C++/CX 的编译,你必须使用 /ZW 编译器选项。 MSVC 编译器将生成一个面向 Windows 运行时的 .exe 文件,并链接到所需的库。
在命令行上编译 C++/CX 应用程序
打开“开发人员命令提示”窗口。 有关具体说明,请参阅打开“开发人员命令提示”窗口。
可能需要管理员凭据才能成功编译此代码,取决于计算机的操作系统和配置。 若要以管理员身份运行命令提示窗口,请右键单击以打开命令提示的上下文菜单,然后选择“更多”>“以管理员身份运行”。
将命令提示符窗口中的当前工作目录更改为可以写入的目录,例如 Documents 目录。
在命令提示符下,输入 notepad basiccx.cpp。
在系统提示是否创建文件时,选择“是”。
在记事本中,输入以下行:
using namespace Platform; int main(Platform::Array<Platform::String^>^ args) { Platform::Details::Console::WriteLine("This is a C++/CX program."); }
在菜单栏上,选择“文件”>“保存”。
你已创建使用 Windows 运行时 Platform 命名空间命名空间的 C++ 源文件。
在命令提示符处,输入
cl /EHsc /ZW basiccx.cpp /link /SUBSYSTEM:CONSOLE
。cl.exe
编译器将源代码编译到.obj
文件中,然后运行链接器以生成名为 basiccx.exe 的可执行程序。 /EHsc 编译器选项指定 C++ 异常处理模型,而 /link 标志指定控制台应用程序。若要运行 basiccx.exe 程序,请在命令提示符下,输入 basiccx。
该程序显示以下文本并退出:
This is a C++/CX program.