0

我正在 WPF C# (Visual Studio 2008) 中为用 c++ 编写的数学模型实现 GUI。我可以在单个 VS 解决方案中完全访问两个项目的源代码

我的问题是:

  1. 是否可以从 C# 调用 C++ 中的方法?
  2. 如果是,最好的选择是什么?
  3. 我需要在 C++ 中做什么来“公开”该方法?

我曾尝试“添加参考”,但我认为它不会像这样工作。

4

2 回答 2

4

有多种选择。

最简单的选择通常是使用 C++/CLI 为您需要的 C++ 方法创建一个包装器。然后,您可以从 C# 项目中添加对 C++ DLL 的引用,并正常使用它。

或者,您可以通过 C API 公开所需的 C++ 方法,然后使用 P/Invoke 从 C# 调用它们。

于 2013-07-12T17:43:14.460 回答
1

如果你有一个 C++ 库 (.dll),你可以像这样在 C# 中使用它:

[DllImport("filename.dll")]
public static extern void MethodName(ParameterList);

然后你可以调用MethodName(...)你的 C# 代码。

于 2013-07-12T17:45:37.360 回答