0

我有一个用 C++ 编写的相当复杂的项目,我正在尝试将其转换为 C# 解决方案。我认为将核心留在 C++ 中作为 VC++ 类库是最容易的。

在开始之前,我尝试以这种方式编写简单的 C++ 类并在 C# 项目中使用它。我遇到的第一个问题是 STL(在核心 STL 中,使用了 Boost 和 QT):我不能将 C# List 作为 std::list 传递给 C++ 方法。

有什么简单的方法可以在 C# 中将 C++ 代码与 STL、Boos 和 QT 一起使用,或者将其转换为 C# 更容易?

4

1 回答 1

2

无法将 C++ 转换为 C#。而且也没有理由这样做。您可以做一些事情:

1)用C#重写GUI

2) 用 C++/CLI 包装 C++ 类并从 C# 中使用它们

3)如果您的应用程序主要是 Gui 并且背后的逻辑不是太复杂,您可以使用 C# in unsafeblock 中的 C++ 代码部分。

您绝对不应该做的是将 c++ 代码逐行传输到 c# 中。

于 2013-03-04T08:44:12.560 回答