C++/WinRT 是适用于 Windows 运行时 (WinRT) API 的标准 C++17 语言投影。 它作为基于标头文件的库实现,旨在从任何符合标准的 C++17 编译器提供对新式Windows API 的一流访问。
C++/WinRT 让你能够使用标准 C++ 调用和编写 Windows 运行时 API。 它是 C++/CX 和 Windows 运行时 C++ 模板库(WRL) 的推荐替代方案。
开始
- C++/WinRT 简介 - C++/WinRT 是什么以及它存在的原因的概述。
- C++/WinRT 入门 - 设置开发环境并编写第一个 C++/WinRT 应用。
核心概念
- 并发和异步操作——通过协程编写和使用异步操作。
- 完成源示例 - 报告进度、超时和其他高级模式。
- 使用 C++/WinRT 的集合 - 创建和使用Windows 运行时集合类型。
- 装箱和拆箱值 — 为需要 IInspectable 的 API 包装标量值和数组值。
- 标准 C++ 数据类型和 C++/WinRT - 将标准 C++ 类型与 Windows 运行时 API 配合使用。
- 值类别和引用 — 了解左值、右值以及 C++/WinRT 如何使用它们。
- 敏捷对象 - 敏捷性在 C++/WinRT 中的工作原理。
- 字符串处理 - 使用 winrt::hstring 和标准字符串类型。
- 错误处理 - 使用 C++/WinRT 处理和生成错误。
创作和互操作
- 编写 COM 组件 — 使用 C++/WinRT 实现经典 COM coclass 类。
- 使用 API — 从 C++/WinRT 调用Windows 运行时 API。
- 创作 API — 定义和实现自己的Windows 运行时类型。
- C++/WinRT 与 ABI 之间的互操作 - 在 ABI 和 C++/WinRT 对象之间进行转换。
- 将参数传递到 ABI 边界 - 有效地跨 ABI 传递值。
- 在 C++/WinRT 中使用 C# 组件 — 使用 C# Windows 运行时 组件。
XAML 和 UI
- XAML 控件;绑定到 C++/WinRT 属性 — 数据绑定 XAML 控件到 C++/WinRT 属性。
- XAML 项控件;绑定到集合 - 绑定到可观察集合。
- XAML 自定义控件 - 创建自定义(模板化)控件。
Samples
参考和诊断
- 命名约定 - C++/WinRT 命名规则和约定。
- 本机调试可视化(natvis) — 使用 Visual Studio natvis 调试 C++/WinRT 类型。
- 宏 — C++/WinRT 预处理器宏。
- 诊断直接分配 - 检测并修复实现类型的直接分配。
- 有关析构函数的详细信息 - 了解 C++/WinRT 中的析构函数行为。