首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VC >

怎么用托管c++包装c++类

2013-03-19 
如何用托管c++包装c++类因为需要在C#中调用c++ dll(包含类),所以用了一个托管c++类将其包装,但是不知道如

如何用托管c++包装c++类
因为需要在C#中调用c++ dll(包含类),所以用了一个托管c++类将其包装,但是不知道如何对应参数问题。

bool ReadBlock(int nPosX, int nPosY, int OffsetX, int OffsetY, void* pBuffer);

这个里面的void*是要指向一个数组,整形或者字符型。
然后在托管c++类里面我是这么写的
bool ReadBlock(int nPosX, int nPosY, int OffsetX, int OffsetY,  IntPtr pBuffer)
{

return rs->ReadBlock((void*)hBand,nPosX,nPosY,OffsetX,OffsetY,(void*)pBuffer);
}


不知道有没有错,而且也不知道如何在C#中调用,求指教啊!!
[解决办法]
可以在C#中为相同的API创建多个原型定义,同一个参数,即可以定义为int,也可以是stringbuilder或者byte[]。
[解决办法]
rs->ReadBlock((void*)hBand,nPosX,nPosY,OffsetX,OffsetY,(void*)pBuffer);
bool ReadBlock(int nPosX, int nPosY, int OffsetX, int OffsetY, void* pBuffer);
二者参数不一致

热点排行