我目前正在用C++和C#编程.使用本机C++进行数值计算部分.
最初我打算使用C++/CLI来创建本机C++类的包装器,但我发现它会导致2到4倍的减速.
所以我决定将我的原生C++编译成DLL,并通过P/Invoke调用 .NET/C#.我将在C#中进行数据预处理,并在本机DLL中进行数字运算.
问题是,当我为其他人提供我的工作时,我希望它是一个单独的DLL.
这可能吗?顺便说一下,我有原生C++的所有源代码.
通过生成netmodules,您可以非常轻松地完成此操作.将组合的C++和C++/CLI代码编译为.obj(C++ netmodules具有文件扩展名.obj,C#netmodules具有文件扩展名.netmodule),然后将其链接到您的C#项目中.
详情:http://blogs.msdn.com/junfeng/archive/2005/05/19/420186.aspx.工作示例:http://blogs.msdn.com/b/junfeng/archive/2006/05/20/599434.aspx.
Pau*_*aul -1
您可以在 .NET 中的同一程序集中混合使用多种语言,但这是不自然的。除非绝对必要,否则我会避免这种情况。
看:
我将不同语言的程序集分开。
| 归档时间: |
|
| 查看次数: |
4267 次 |
| 最近记录: |