jsgen的几个bug

0 views
Skip to first unread message

水清则无鱼

unread,
Apr 9, 2006, 9:56:09 PM4/9/06
to 基于ACE和SpiderMonkey的SMS虚拟运营系统
1,VC向导类生成导致JSGen的问题。
在类头文件中,需要要去掉class字符串,否则JSGen解析的时候会有问题,可以修改JSGEN中解析"class"这个字符串,改为"class
",后面加一个空格就可以了。
// FastQueue.cpp: implementation of the CUdpDataQueue class.
//
//////////////////////////////////////////////////////////////////////


2,JSgen不支持字符串,生成代码的时候弄成object

3,/* javascript functions
*/之间不能有tab字符,必须是空格。使用不方便

4,JSGen不能支持默认值
void Calc(int iType,int a=0,int
b=0),要是能支持,脚本参数就灵活一些。
否则只能固定个数。


有了上面这些问题,使用JSGen几乎变成了手工的了,必须在开始的时候把所有需要定义的方法和属性定义好,但这在实际开发中,好像很难做到,修改头文件后,再用JSGen生成代码,记得一定要备份喔

candid Qiu

unread,
Apr 9, 2006, 10:16:31 PM4/9/06
to ACE...@googlegroups.com
我的解析如下:

在 06-4-10,水清则无鱼<index...@gmail.com> 写道:


> 1,VC向导类生成导致JSGen的问题。
> 在类头文件中,需要要去掉class字符串,否则JSGen解析的时候会有问题,可以修改JSGEN中解析"class"这个字符串,改为"class
> ",后面加一个空格就可以了。
> // FastQueue.cpp: implementation of the CUdpDataQueue class.
> //
> //////////////////////////////////////////////////////////////////////
>
>

这个可能存在问题,有时候如果一个类用到另外一格类会在前面加上
class <name>;再开始定义自己的类,也有可能一个文件有多个类定义,我觉得可以在类定义前加上注析:

/* javascript class */

...........


/*class end*/

这个有时间我会加上,如果谁有兴趣可以先试试!


> 2,JSgen不支持字符串,生成代码的时候弄成object
>

这个我前面讲了,可以支持,不过要用string,而且不能用std::string的写法


> 3,/* javascript functions
> */之间不能有tab字符,必须是空格。使用不方便
>

> 4,JSGen不能支持默认值
> void Calc(int iType,int a=0,int
> b=0),要是能支持,脚本参数就灵活一些。
> 否则只能固定个数。
>
>

这个也可以休改jsgan是其支持,这个有时间我会加上,如果谁有兴趣可以先试试!

Reply all
Reply to author
Forward
0 new messages