Windows 8,C++和Metro GUI示例?

Rel*_*lla 24 c++ windows user-interface windows-8 windows-runtime

所以我看看这个Windows构建主题演讲 (Windows构建主题演讲1:42:56)我只是不明白 - 我可以用什么来创建能够从我的C++代码调用函数的C++和/或GUI语言的GUI?HTML,XAML还是什么?在哪里可以看到使用C++ for Windows 8 Metro应用程序执行markup call codecode create GUI示例的代码示例?

Kat*_*ory 18

C++和其他语言的示例代码位于http://code.msdn.microsoft.com/windowsapps.你可以看看它是如何完成的.


Ron*_*lic 13

如果要调用C++代码,最简单的方法是将C++与Component Extensions一起使用.这只是简单的C++编译为本机代码,但它有一些扩展(让人想起C++/CLI),让你使用WinRT COM组件,而不必担心COM管道.

使用C++和WinRT,您实际上可以像管理语言一样使用XAML来定义用户界面.它非常整洁,请参阅此处的文档:

我没有调查过,但您仍然可以在托管语言中使用P/Invoke或COM互操作来调用Metro风格应用程序的C++代码,但这是未经证实的.显然,桌面应用程序可以完成它通常会做的所有事情.

  • 你真的不需要在C++中编写或使用WinRT组件的扩展,与ATL之类的东西相比,它们有很多帮助,它们具有非常无缝的智能指针和QueryInterface和朋友的大量宏.就个人而言,我更愿意将它们视为语言扩展,而是将整个事物视为一种新的语言,包括C++作为一个完整的子集 - 有点像Objective-C对C的方式. (4认同)
  • @Pavel Minaev - 确切地说.在查看文档并生气了一下之后,基本上使用C++/CLI将需要编写本机WinRT应用程序,我得出的结论是,这是什么.NET从一开始就看起来像这样世界C#完全没必要.您现在可以通过简单_not_使用WinRT组件和对象来编写跨平台本机代码.你不必完全改变_the language_(并且不要让我开始使用Mono开始跨平台而且全部 - 在OS X上尝试KeePass2).我正在热身这个想法. (3认同)

Rei*_*man 6

您可以使用C++代码编写metro风格的应用程序.您还可以在Javascript/HTML/CSS中编写应用程序,并从这些JavaScript应用程序中调用您在C++或C#/ VB中编写的API.