社区
C#
帖子详情
请大家讨论一下C#应用与C++应用交互数据的问题。
康斯坦汀
2011-12-16 01:13:15
一个2D/3D图性类的项目,低层引擎是C++写的,现在需要C#应用来调用,两者都是自己开发的,有源码。
两者有大量的数据需要通讯,比如C#会操作大量图形移动,C++提供绘制的支持,也就是说需要实时的
大量数据交互,请大伙讨论一下以下问题:
1)两者怎样交互最有效率?
2)两者怎样交互最为简单方便?
...全文
132
7
打赏
收藏
请大家讨论一下C#应用与C++应用交互数据的问题。
一个2D/3D图性类的项目,低层引擎是C++写的,现在需要C#应用来调用,两者都是自己开发的,有源码。 两者有大量的数据需要通讯,比如C#会操作大量图形移动,C++提供绘制的支持,也就是说需要实时的 大量数据交互,请大伙讨论一下以下问题: 1)两者怎样交互最有效率? 2)两者怎样交互最为简单方便?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zgc2008
2011-12-20
打赏
举报
回复
C#创建窗体.并在上面放一个pic控件.将c++封装成dll.需要绘图的时候,就将pic的窗口句柄传给dll...目前我用的是这个方法.这个开发简单,但是后期应用不是很方便. 要不就将C++封装成CLT。开发难度有点麻烦,但是用熟悉了,很方便的
sdl2005lyx
2011-12-20
打赏
举报
回复
"对COM还算熟悉,写COM没问题,但COM适合传递大量数据么?适合各种复杂的类型么?
关键是海量数据,一个3D建模的数据可能是GB级别的。所以上面说的方法似乎都不行。"
你可以写一个ICollection集合接口,进行大批量数据交互!
对于复杂类型,把它做成实体类,在IDL导出,在C#直接使用!
donkey301
2011-12-20
打赏
举报
回复
[Quote=引用 4 楼 r3000 的回复:]
引用 3 楼 sdl2005lyx 的回复:
如果对COM比较熟悉,建议把C++的写成COM组件,这样net这边使用非常方便,
不熟悉的话,就用平台调用,互操作方式,就是会麻烦一些,要做大量的类型和接口映射定义。。。
对COM还算熟悉,写COM没问题,但COM适合传递大量数据么?适合各种复杂的类型么?
关键是海量数据,一个3D建模的数据可能是GB级别的。所以上面说的方法似乎都……
[/Quote]
3D数据是GB的没错,但交互数据不应该是GB量级的,譬如C#会操作大量图形移动时只要告诉C++平移的x,y,z就行了,相当于C++中有个接口Translate(double x, double y, double z)。如果交互数据需要是GB量级的,那就不要用C#做界面了,直接用MFC吧。
康斯坦汀
2011-12-16
打赏
举报
回复
[Quote=引用 3 楼 sdl2005lyx 的回复:]
如果对COM比较熟悉,建议把C++的写成COM组件,这样net这边使用非常方便,
不熟悉的话,就用平台调用,互操作方式,就是会麻烦一些,要做大量的类型和接口映射定义。。。
[/Quote]
对COM还算熟悉,写COM没问题,但COM适合传递大量数据么?适合各种复杂的类型么?
关键是海量数据,一个3D建模的数据可能是GB级别的。所以上面说的方法似乎都不行。
sdl2005lyx
2011-12-16
打赏
举报
回复
如果对COM比较熟悉,建议把C++的写成COM组件,这样net这边使用非常方便,
不熟悉的话,就用平台调用,互操作方式,就是会麻烦一些,要做大量的类型和接口映射定义。。。
donkey301
2011-12-16
打赏
举报
回复
可以用COM组件,Pro/E,CATIA,UG等等的三维建模工具都是用COM组件和其它程序做交互的。
csdn_aspnet
2011-12-16
打赏
举报
回复
http://www.cnblogs.com/warensoft/archive/2011/12/09/2281839.html
C#
与
C++
交互
一、关于非托管
C++
调用
C#
DLL的
问题
: 1.可以在二者之间增加一个桥梁,使用
C++
/CLI(取代了托管
C++
) ,原生
C++
代码为主调程序,
C++
/CLI和
C#
/.NET 均为动态库*.dll。 2.原生
C++
可以使用函数LoadLibrary(dllFileName)...
C#与C/
C++
的
交互
C#与C/
C++
的
交互
...比来在编写Warensoft3D游戏引擎,并估计来岁年初公布测试版本,底层引擎
应用
DirectX和MONO来编写,上层的逻辑
应用
C#来编写,是以编写了多量C#与
C++
互调的代码,如今经验写出来与大师分享,并
C#
与C/
C++
的
交互
我们知道在大多数的静态语言中定义变量的时候都要先指定其
数据
类型,所谓
数据
类型,都是人们强加的一个便于记忆的名称,究其本质就是指明了这个
数据
在内存里到底是占用了几个字节,程序在运行的时候,首先找到这个...
【注意事项】
c#
通过CallBack获取
C++
传递的
数据
但是
C++
与
C#
必然存在
数据
交互
,
C#
与
C++
dll的
数据
交互
从来都是一个让人头疼的
问题
。从调用方式看也有两种情况:1、
C#
调用
C++
函数这种情况用的比较多,
数据
流向可以是
C#
流向
C++
,通过参数将
数据
传递给
C++
(如:SetData...
Unity3D(
C#
)和
c++
dll
交互
问题
C#
和
C++
的
交互
有多种方法,这里主要说下
C#
和C接口
交互
的
问题
。
C#
和
C++
通过类直接
交互
的方式,可以参考https://msdn.microsoft.com/en-us/library/ms235281.aspx 首先假如我们有TestC.dll(ios下是.a,Android下是....
C#
110,567
社区成员
642,567
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章