加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

Windows 8 WinRT – C或C .NET?

发布时间:2020-12-13 22:33:07 所属栏目:Windows 来源:网络整理
导读:我听说 Windows 8开发将允许XAML / HTML5 C应用程序,但是它是原生非托管C还是托管C(以前称为C .NET)? 解决方法 Windows Runtime (WinRT) 本身就是一个本机非托管框架,但可以通过简单的方式从托管.NET语言中调用(与其他本机库和臭名昭着的P / Invoke相比).
我听说 Windows 8开发将允许XAML / HTML5 C应用程序,但是它是原生非托管C还是托管C(以前称为C .NET)?

解决方法

Windows Runtime (WinRT)本身就是一个本机非托管框架,但可以通过简单的方式从托管.NET语言中调用(与其他本机库和臭名昭着的P / Invoke相比).

但除了从托管语言使用它之外,它还可以从C/C++X调用.这是标准C的Microsoft扩展,类似于.NET的C/C++LI.但与后者相比,它完全是原生的非托管C.但它支持一些C/C++LI的扩展,比如“类似托管”指针的^运算符.但在引擎盖下,那些实际上不是托管垃圾收集指针,而是本机引用计数指针,类似于std :: shared_ptr.我认为它还支持类似.NET的属性和委托,以及部分类,以便使用WinRT的XAML框架.

除此之外,您甚至可以使用所谓的Windows运行时C模板库(WRL)从标准C使用WinRT,虽然据说它比使用C/C++X更麻烦,但您可能无法使用所有功能,例如简单的XAML接口,不确定.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读