你能用C++/CX编写正常的Windows应用程序吗?

Noa*_*oth 6 c++ windows-runtime

或者您是否仅限于"Metro风格"应用程序和Windows应用商店应用程序?

起初我认为C++/CX是C++/CLI的一个很好的替代品,因为它有一些漂亮的C#-esque关键字('sealed','partial'),它也可以编译为本机代码,而不是使用.NET.但在线阅读,我所能找到的是有关Windows应用商店应用和Metro风格应用的信息......

另外,WinRT仅适用于Windows 8及更高版本吗?

谢谢你的帮助.

Rob*_*SFT 11

是的,您可以使用C++/Cx编写桌面应用程序,并可以在桌面应用程序中使用某些Windows运行时API(文档和标题中标记为桌面应用程序的那些).请参阅桌面应用程序的Windows运行时API.MSDN上的Enumerate app packages示例演示如何使用C++/Cx在桌面应用程序中调用Windows Runtime API.

Windows运行时Xaml类不适用于桌面应用程序,但由于您可以混合使用C++和C++/Cx,因此您可以从也使用C++的应用程序调用典型的桌面UI API(Win32,MFC,DirectX等)./CX.

C++/Cx实际上不是C++/CLI的替代品.除了使用一些类似的语法,他们有不同的目标.如您所知,C++/Cx不是托管语言,因此无法用于调用托管代码.选择C++/CLI的主要原因是与托管代码互操作.如果您需要从桌面应用程序调用Windows运行时,C++/Cx是一个不错的选择.

Windows运行时仅在Windows 8及更高版本上可用.