菜卷鱼 发表于 2020-8-15 17:33:38

用海大师的可选参数程序产生的BUG

【首发】定义真正意义的可选参数(附带防反编译技术)
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=181052&fromuid=399892
(出处: 明经CAD社区)

用海大师的程序写了四个计算程序 ++ -- **//,可以直接算数字字符串的

但是发现一个BUG ,不知道是不是我的问题

但是 ,发现这几个代码不能够写进同一句代码,单独用没问题
例如
(++ "1" "2" 3) 可以返回"6"
(** "1" "2" 3) 可以返回"6"
但是
(++ (++ "1" "2" 3)(** "1" "2" 3) ) 按理本应该返回 "12",但是结果只返回 "6"
因为前面的变成了 nil
用list 测试 (list (++ "1" "2" 3)(** "1" "2" 3) )
返回 (nil "6")
(list (++ "1" "2" 3)(** "1" "2" 3) (** "1" "2" 3) (** "1" "2" 3) (** "1" "2" 3))
返回 (nil nil nil nil "6")

tryhi 发表于 2020-8-17 12:03:34

本帖最后由 tryhi 于 2020-8-17 22:37 编辑

大师不敢当,确实有BUG,已经修改,原贴已更新,源码移步原贴下载
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=181052&fromuid=399892



尘缘一生 发表于 2020-8-16 03:57:58

海大师帖子我看过,半懂。

xinxirong 发表于 2020-8-16 07:03:46

可能连续用不行,分开试试。

xinxirong 发表于 2020-8-16 07:04:47

(list(list (++ "1" "2" 3) (list (** "1" "2" 3) )))

664571221 发表于 2020-8-16 15:10:59

请海大师出来回答
页: [1]
查看完整版本: 用海大师的可选参数程序产生的BUG