c# 与c++ 混合编程

在一个论坛里看到一个问题,感觉比较有意义,记录下:

“程序里面一个核心算法模块是用C++写的(遗传算法)而其他界面,数据库相关操作,三维二维显示都是在AE+c#做的。

不知道怎么把这两个结合在一起。

就是c#里面会将一些数据库里的数据传给C++模块,再从中获得计算结果数据。

感觉用文件太麻烦,但是c++和c#数据类型定义又不同。

 另外觉得,是不是要把c++编成dll,还是直接两个写到一个解决方案里面?”

回答:

1.把C++的编译成DLL,在C#中是可以调用的。

2.在c++中把要处理的功能封装成导出函数,编译成dll,然后c#导入dll,声明前面的函数即可调用

3.把之前C++的算法,写成ATL,使用之前,注册一下。
C#调用的时候直接在引用里添加这个DLL就可以,跟使C#自己的DLL一样。

4.com,做一个COM的DLL


看了大家讨论,感觉这个问题比较有意义,C#和C++各有长处,混合编程貌似一直没真正用过,有时间体验一下,呵呵!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值