链接到 C# GUI 的 C++ 程序
Posted
技术标签:
【中文标题】链接到 C# GUI 的 C++ 程序【英文标题】:C++ program linked to C# GUI 【发布时间】:2016-04-02 15:30:16 【问题描述】:我目前正在制作一个应用程序,其中我用非托管 C++ 编写了底层模型(逻辑)(目前它只是在 Visual Studio C++ 控制台应用程序项目中)但是我想在 C# 中创建接口,因为我了解由于 WPF,GUI 编程要容易得多。
代码模型是用 C++ 编写的,因为这是我最熟悉的语言并且出于效率的原因。将其移植到 C# 绝对是一种选择,但我对 C# 不是很熟悉(虽然我对 Java 有丰富的经验,所以我确信这不是一个大的飞跃)所以我宁愿将我的逻辑保留在 C++ 中。
在网上查找时,我在这里找到了与此相关的先前问题:
Fast C++ program, C# GUI, possible?
但是,这是 6 年前的事了,我想知道是否有任何更新(更简单)的方法可以将 C++ 项目链接到 Visual Studio 2015 中的 C# (GUI) 项目?我想我仍然需要在 VS 中通过 CLR->Class Library
创建一个托管 C++ 项目,但是有什么新东西可以让整个过程更容易吗?
我还应该注意,如果这对用于制作实际 GUI 的方法有任何影响(即,这在 C# 中是否可以通过 WPF 实现?)
【问题讨论】:
【参考方案1】:绝对托管的 C++/CLI 并不是最美丽的东西,但它存在的全部意义在于将非托管代码与 .NET 世界连接起来,而且它做得很好。
当一个解决方案在 VS 中开箱即用、准备就绪并设置好时,我实际上认为没有理由寻找替代方案。
【讨论】:
这个。我开始编写自己的答案,但意识到它与此答案基本相同。不是非常漂亮,但只要您将 CLI 保持在一个很小的层以将 C++ 肉暴露给 .Net,您就很成功了。它只是工作。还可以查看 msdn.microsoft.com/en-us/library/bb384865.aspx 用于转换字符串、shared_ptrs 等以上是关于链接到 C# GUI 的 C++ 程序的主要内容,如果未能解决你的问题,请参考以下文章