majesty 发表于 2009-1-22 15:54:11

LR DLL中函数默认参数值的问题

小弟编写了一些用于字符串操作的函数然后编译成DLL,但是发现原先在VC6.0里定义的函数默认实参值在LR里并没有效果,实验下来发现只要参数类型为INT型则一旦缺省,默认赋值为0. 比如:
char *substr(const char *srcstr, int start, int length = 999)
{
//函数体。。
}
当我在加载DLL并调用该函数时,如果省略第三个参数length,则LR会将length赋值为0,而不是我在VC里定义的999,但是我0在下面有其他定义啊,真是头疼。。。
哪位能帮小弟一把啊,感激不尽:handshake

[ 本帖最后由 majesty 于 2009-1-22 15:55 编辑 ]

honsongj 发表于 2009-1-22 20:16:15

帮顶

door11 发表于 2009-1-23 17:08:28

“但是我0在下面有其他定义啊”是啥意思啊?
谁能说明白LR编译器到底这么处理的,每次调用时赋值不能解决问题吗?
页: [1]
查看完整版本: LR DLL中函数默认参数值的问题