我有一个用 C++ 定义的接口(interface),现在需要用 C# 实现。最好的方法是什么?我根本不想在我的接口(interface)定义中使用 COM。我现在解决这个问题的方法是有两个接口(interface)定义,一个在 C++ 中,一个在 C# 中。然后,我将 C# 接口(interface)公开为 COM 服务器。这是我用 C++ 编写的应用程序可以调用 C#。无论如何我可以避免在 C++ 和 C# 中定义我的实现吗?
最佳答案
如果您愿意为托管代码使用 C++/CLI 而不是 C#,那么您可以直接通过头文件使用 native C++ 接口(interface)定义。这将有多容易将完全取决于您的界面中的内容 - 最简单的情况是您可以从 C 中使用的内容。
看看 Marcus Heege 的 Expert C++/CLI: .NET for Visual C++ Programmers ,了解有关在 .NET 中混合 native 和托管 C++ 的大量有用信息。
关于c# - 在C++中定义一个需要在C#和C++中实现的接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64645/