Windowsランタイム
WinRTはメタデータに基づいた、リッチなオブジェクト指向のクラスベース型システムを持っている。WinRTは.NET Frameworkにみられるような、クラス、メソッド、プロパティ、デリゲートおよびイベントといった構成概念に対応するものをサポートする。
COMと比較して、WinRTに追加された主要なもののうちのひとつは、クロスABIで.NETスタイルのジェネリクスである。C++/CXにおいて、ジェネリクスはgenericキーワードを用いて宣言され、templateキーワードを用いた構文と非常によく似た構文を持つ。WinRTのクラス (ref class) は、C++のテンプレートを用いてジェネリック化することもできるが、.winmdメタデータにエクスポートすることはできない。つまり、privateな可視性を持つWinRTクラスのみをテンプレートとすることができ、またテンプレートを特殊化した型はWinRTクラスのprivateなメンバーとしてのみ利用可能である。一方WinRTのジェネリクスはジェネリック性 (genericity) をメタデータ内に保存する。WinRTはまた、ジェネリックなコンテナ(コレクション)のライブラリを提供する。