【发布时间】:2016-01-29 11:12:30
【问题描述】:
这听起来像是一个愚蠢的问题,因为我知道这两种语言的实现完全不同。但是,我对细节有些不清楚。
我喜欢 C++CLI 中一个非常好的特性,即我可以拥有一个标准的 C# .NET 动态库并在 C++CLI 动态库中引用它,反之亦然。
C++CX 似乎已经失去了这种能力,现在一切都必须通过“Windows 运行时组件”进行接口。但是,由于这些“Windows 运行时组件”旨在与 C++CX 和 C# 之外的语言一起使用,因此它们具有严格的限制,例如没有虚拟方法(所有类都必须密封在 Windows 运行时组件中)——对汇编的限制多态性对我来说有点破坏交易,我想知道是否有什么我没有尝试获得 C++CLI 的良好和流畅的互操作功能,或者 C++CX 的实现是否如此不同以至于它不是可以再做这种事情了。
我是否缺少一种简单的方法来使用 C++CX 并轻松地与动态托管 C# WUP 程序集进行互操作?或者这根本就不是它的工作原理了?
我非常喜欢 C++CLI,但很失望 C++CX 似乎不能以同样的方式工作 - 任何善于消除我对它们之间差异的困惑的人都会受到赞赏,特别是,如果有一种方法可以桥接程序集,而无需每次都编写“Windows 运行时组件”桥,从而保留多态性功能。
【问题讨论】:
标签: c# c++-cli interop win-universal-app c++-cx