学会并熟练从C#向C++传递消息的方法
1、如下图,我需要在C#中将下列变量全部打包,传递给C++程序。

2、为了传递这些参数,我新定义了以下变量:

3、此外,我又定义了3个表示长度的变量,也顺便传递:

4、需要特别注明:如果需要传递n个int型变量,那么int[] CommandID的长度应定义为n+2,即int iSize = n + 2,这是因为CommandID[0]需要存储插件ID,CommandID[2]需要存储命令ID,CommandID[3]开始才是想要传递的数值。
5、“如何在C#中“打包”即将传递的消息”范例代码

1、在C#中“打包”完毕即将传递的消息后,需要书写一行代码将“打包”好的消息传递出去,这一行代码就是
OgreInterface.g_Command(CommandID, iSize, douPara, dSize, strPara, cSize, true);
1、在C++中接收消息,需要四大步骤:(1)在C++插件工程的类中写入一个int型私有变量mTestCommandID,用来存储接收到的命令ID;
2、(2)在C++插件工程的类中写入一个public方法OnCommand(),用来接收OgreInterface类中g_Command方法传递过来的参数;

3、(3)在C++插件工程的类的构造函数中,写入本插件的ID号,并初始化mTestCommandID;

4、(4)在OnCommand()写具体的代码,取出接收到的参数。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:52
阅读量:157
阅读量:87
阅读量:82
阅读量:161