C# 封装C++函数

梦里独赏花 2013-02-19 05:05:42
typedef struct ZN_MACAU_PlateIDConfig // 车牌识别SDK配置结构
{
int nMinPlateWidth;
int nMaxPlateWidth;
bool bVertCompress;
bool bIsFieldImage;
bool bOutputSingleFrame;
bool bTwoRowYellow;
int nNightBeginHour;
int nNightBeginMinute;
int nNightEndHour;
int nNightEndMinute;
bool bIsBGRColorOrder;
unsigned char cInChannels;
int gsl;
char szProvince[4];
bool bufferDelay;
}ZN_MACAU_PlateIDConfig;

// 缺省车牌识别SDK配置
const ZN_MACAU_PlateIDConfig c_defConfig = {40, 400, false, false, true, true, 25, 30, -1, 30, true, 32, 5, 0,false};

int __stdcall ZN_MACAU_InitPlateIDSDK(const ZN_MACAU_PlateIDConfig *pPlateConfig = &c_defConfig);

如何封装? 如何调用啊?谢谢
...全文
285 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
梦里独赏花 2013-02-21
  • 打赏
  • 举报
回复
引用 7 楼 wowmboy 的回复:
用类就可以了。定义个类。那些都是属性。
我是针对于某个函数来说的
小生我怕怕 2013-02-21
  • 打赏
  • 举报
回复
用类就可以了。定义个类。那些都是属性。
梦里独赏花 2013-02-21
  • 打赏
  • 举报
回复
一下C++函数如何用C#封装 int __stdcall ZN_MACAU_RecogStillLPImage(char *pbyBits, int nWidth, int nHeight, ZN_MACAU_PlateIDResult pResult[MAX_PLATE_CANDIDATE], int *nResultNum, const ZN_MACAU_RECT *prcRange = NULL, bool bVertFlip = false,bool bDwordAligned = false, char Channel =0); 这样封装好像有问题: public static extern int ZN_MACAU_RecogStillLPImage (IntPtr pbyBits,int nWidth,int nHeight,ref ZN_MACAU_PlateIDResult pResult, ref int nResultNum, ref ZN_MACAU_RECT prcRange ,bool bVertFlip , bool bDwordAligned , string cChannel); 大家可以指导一下吗?
梦里独赏花 2013-02-20
  • 打赏
  • 举报
回复
引用 4 楼 gxingmin 的回复:
参数是ZN_MACAU_PlateIDConfig对象,你传这个对象过去就行了 也可以不传参数,不传参数的话是默认值 &c_defConfig(这个是c++定义的变量)
那我直接 这样声明行吗? public static extern int ZN_MACAU_InitPlateIDSDK(ZN_MACAU_PlateIDConfig pPlateConfig); 头文件有这个:const ZN_MACAU_PlateIDConfig c_defConfig = {40, 400, false, false, true, true, 25, 30, -1, 30, true, 32, 5, 0,false}; 在C#中 这个我该怎么写?
gxingmin 2013-02-20
  • 打赏
  • 举报
回复
参数是ZN_MACAU_PlateIDConfig对象,你传这个对象过去就行了 也可以不传参数,不传参数的话是默认值 &c_defConfig(这个是c++定义的变量)
梦里独赏花 2013-02-20
  • 打赏
  • 举报
回复
引用 1 楼 lye2000000_super 的回复:
用类就可以了。定义个类。那些都是属性。
那个结构体我是会封装 但是这个函数我不太明白 尤其是里面的参数怎么声明啊? int __stdcall ZN_MACAU_InitPlateIDSDK(const ZN_MACAU_PlateIDConfig *pPlateConfig = &c_defConfig);
Trent1985 2013-02-20
  • 打赏
  • 举报
回复
很简单,看下这个就彻底会了http://dongtingyueh.blog.163.com/blog/static/461945320124239215442/
  • 打赏
  • 举报
回复
用类就可以了。定义个类。那些都是属性。

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧