混合c#和vc ++

时间:2009-09-22 22:26:25

标签: c# visual-studio-2008 visual-c++

我有一个c#的代码片段,我一直试图将其翻译成vc ++,但我遇到了一些困难。所以,我想知道混合c#和vc ++是否可行或可取;也就是说,我可以从vc ++调用我的c#函数,反之亦然。如果是这样,有技巧吗?如果,不是,为什么?

3 个答案:

答案 0 :(得分:0)

如果你想把两者混合起来,我会从C#开始作为基础项目,然后是register an unmanaged (C++) DLL in your C# project。这样,您可以将托管C#父应用程序的可靠性与C ++在任何处理器密集型方法中的速度优势结合起来。

答案 1 :(得分:0)

是否管理VC ++应用程序?如果是这样,您可以创建一个C#DLL,从您的c ++应用程序中使用它,如果您愿意,ILMerge将它们分成一个EXE。

答案 2 :(得分:0)

从C#调用C ++代码非常简单,您应该能够在Pinvoke和其他类型的互操作上找到大量文章。

从C ++调用C#代码 - 如果您的C ++应用程序已经过管理,那么您应该能够直接从C ++应用程序引用C#程序集并正常使用它。

如果没有管理ypu C ++代码,那么你需要使用某种互操作来允许你的C ++程序集调用C#代码,这样做的唯一方法就是COM。

尝试使用其中一些链接获取有关使用C#的COM互操作的更多信息: