Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 q 3.6 32bit 中,我看到了一些我无法解释的东西。拥有相同的解析树,这两个表达式 fory1和 fory2给出了太不同的结果:
y1
y2
q)x:3 q)parse"y :: x*10" :: `y (*;`x;10) q)parse"y:: x*10" :: `y (*;`x;10) q)y1 :: x*10 q)y2:: x*10 q)x:5 q)y1 30 q)y2 50
为什么这里的空间如此有意义?
我相信在 kdb 中定义视图的条件是变量和 :: 之间不应有空格
因此,在您的示例中,y2 是视图而 y1 不是,因此当您重新定义 x 时,y2 的值会在引用时更新,而 y1 不会