在程序中的Var区域如果定义了Dic类型,例如
Vars
Dic<Array<String>> FeData(\"TB_BOND_CVBASE\");
之后在程序的不同阶段,例如OnInit OnReady Onbar阶段都可以使用FeData这个基础数据变量。所以请教一下,是否意味着Dic类型的数据是自带Global全局变量属性的?如果要使用普通数据类型改写上面的程序段,应该写为 Global Array<String> FeData ?(否则,在onbar中的各个Bar就无法使用同一个FeData数据)
谢谢刘老师。
如果我把原来写在Var里面的Dic<Array<String>> FeData(\"TB_BOND_CVBASE\"); 改写成 Global Array<String> FeData (因为我需要在OnInit阶段得到基础数据的值,而新版本里面在OnInit阶段不能直接得到Dic的值了,只能用GetDicValue得到 Array<String>的值),这样使用了Global,可以在onInit阶段和OnBar阶段同时使用这个基础数据。但是如果我把这个程序作为一个指标,指定给一个报价列表,作为一个自定义指标。那么在我刷新这个报价列表的指标时,多行报价一齐计算,里面这个作为Global变量的基础数据,会导致多行报价计算时潜在的冲突吗?换句话说,在报价列表里面添加了一个自定义指标的新字段,那么在计算这个字段时,是按顺序一行一行计算的?还是几行几行作为一批并行计算的?如果是几行并行计算,同一个程序共用同一个Global变量,会不会导致问题?这是我的担心。
类似于global 但是这个容器本身是从软件后台的数据库读数据 并不是全局或者普通的区别。
你可以认为这其实是一个参数,只不过取值是由里面的参数名决定