C++/CX (Visual C++ Component Extensions,这个特性在类似C#之类的CLI语言中已经存在很多年。所以C++/CX也支持。以对C++程序员来说比较自然的方式暴露了基于组件对象模型(COM)的WinRT编程范型的接口。使得程序员可以比较方便地编写面向Windows Runtime(WinRT)的程序。生成的局部类型在开头被导入, 引用计数 (Reference counting) 一个WinRT物件是使用引用计数模式来维护其生命期的,Visual C++ 组件扩展) 是微软的C++编译器对C++的扩展, 这里是一个设计工具生成的局部类型示例: // foo.private.h #pragma once partial ref class foo { private: int id_; Platform::String^ name_; }; 这里是一个程序员编写的类示例。因為它們是用 ref class 創建的。以避免干扰程序员写的代码。注意这里partial关键字不是必要的: // foo.public.h #pragma once #include "foo.private.h" ref class foo { public: int GetId(); Platform::String^ GetName(); }; 这是局部类型的实现部分代码的示例: // foo.cpp #include "pch.h" #include "foo.public.h" int foo::GetId() { return id_;} Platform::String^ foo::GetName { return name_;} 泛型 (Generics) WinRT支持泛型,這類型也被簡單地稱為 ref classes,编译器支持在一个类型中同时使用泛型和模板。这个帽子标记是继承自C++/CLI。 public ref class MyClass { }; 局部类型 (Partial classes) C++/CX引入了局部类型的概念。
