(已解决) 关于 20250605 社区版更新记录的解读
恳请大佬们帮忙,20250605 社区版更新记录中的几点看不懂😄
比如:
第 2 点,代码注释功能是啥?如何注释?跟之前的 "//“代码块注释和”/" 单行注释有啥不一样?
第 6 点,循环函数符号是什么?除了 #@,#cell 外,还有别的符号吗?
第 7 点,func fn 中的宏参数、宏方式要怎么写?
以上 3 点能不能举例说明?
第 4 点,concat@0 只支持 A.concat@0 吗?
concat 作为聚合函数时不适用选项 0,比如 concat@0(聚合对象; 分隔符)
谢谢!
第 2 点,新增的代码块注释功能写法为/**/
第 6 点,可以在for x 中有相关示例,循环函数规则可查看循环函数符号
第 7 点,func fn()中有介绍宏参数的概念,使用 @m 选项时为宏方式调用,函数说明中有相关示例可参考
func MA@m (a, b ) = a[-b:-1].avg()
然后写 A.derive( MA(close,5):MA5 )
这样相当于执行 A.derive( close[-5:-1].avg():MA5 )
相当于用 close 和 5 分别替换 a[-b:-1].avg()中的 a 和 b,然后用替换后的串代替 A.derive( MA(close,5):MA5 )中的 MA(close,5)
@leavedy
@ddszm
感谢大佬们指导帮助🙏🙏 我还有点想法:
1、代码块注释 /*…*/ 这个好,但跟我想的不一样。
正常来说,不同的代码块前写上 // 就可以注释掉当前代码块,多个代码块就写多个 //。这种方法属于有选择性地注释。那有没有可能用 /*…*/ 注释掉成片的代码,比如下图中,只要是 /*…*/ 之间的代码都能注释掉不运行,但不影响注释之外的跟其没有关系的代码运行。
2、序表.f 或者 记录.f 这个用法,当 f 是存在的字段时,序表会返回第一行对应的 f 字段的值,等同于 序表 (1).f 。 我想问的是,当 f 这个字段不存在时,这样的写法能否容错?目前,字段 f 不存在时,序表.f 和 记录.f 会报错 "字段不存在",如果想容错,要写成 序表 (1).field(“f”),或者序表.field(“f”)(1)。也就是说,对记录的越界容错只能用 field 吗?简写行不行?
以上是我使用过程中常常想到的,说的不合理,万望勿怪。恳请大佬们给予指导解惑🙏 🙏
聚合函数中 concat 已增加对 @0 选项的支持,请前往下载贴中下载最新的 esproc-bin.jar