标签: c# c++
我正在进行C ++项目。我想将它移植到C#.NET项目。我做了一些研究,我认为最流行的方法是使用pinvoke。
我不知道是否还有其他方法存在?
提前致谢。
答案 0 :(得分:6)
你可以:
1)用C#重写整个项目
2)使用以下任一方法重用几个组件:
P/Invoke重用非托管编译代码
或
C++/CLI创建包装类
答案 1 :(得分:2)
嗯,普通的P / Invoke很适合与C接口,但是如果你想要与一些真正的C ++代码互操作,你就必须使用更复杂的东西。使用.NET,您可以使用C ++ / CLI。在Mono on和.NET上,您可以使用:
CXXI
SWIG
第一种选择不太成熟,但似乎更优雅。
答案 2 :(得分:1)
您可以使用 C++/CLI 来创建包装类。
答案 3 :(得分:1)
您也可以使用SWIG。