演练:在命令行上编译 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 应用程序

  1. 打开“开发人员命令提示”窗口。 有关具体说明,请参阅打开“开发人员命令提示”窗口

    可能需要管理员凭据才能成功编译此代码,取决于计算机的操作系统和配置。 若要以管理员身份运行命令提示窗口,请右键单击以打开命令提示的上下文菜单,然后选择“更多”>“以管理员身份运行”

  2. 将命令提示符窗口中的当前工作目录更改为可以写入的目录,例如 Documents 目录。

  3. 在命令提示符下,输入 notepad basiccx.cpp

    在系统提示是否创建文件时,选择“是”

  4. 在记事本中,输入以下行:

    using namespace Platform;
    
    int main(Platform::Array<Platform::String^>^ args)
    {
        Platform::Details::Console::WriteLine("This is a C++/CX program.");
    }
    
  5. 在菜单栏上,选择“文件”>“保存”

    你已创建使用 Windows 运行时 Platform 命名空间命名空间的 C++ 源文件。

  6. 在命令提示符处,输入 cl /EHsc /ZW basiccx.cpp /link /SUBSYSTEM:CONSOLEcl.exe 编译器将源代码编译到 .obj 文件中,然后运行链接器以生成名为 basiccx.exe 的可执行程序。 /EHsc 编译器选项指定 C++ 异常处理模型,而 /link 标志指定控制台应用程序。

  7. 若要运行 basiccx.exe 程序,请在命令提示符下,输入 basiccx

    该程序显示以下文本并退出:

    This is a C++/CX program.
    

另请参阅

项目和生成系统
MSVC 编译器选项