关于序列变量函数和if

看到有说法如果函数有序列变量比如说 avgtruerange,

if(avgruerange>50) {   buy XXXX};  是错误的写法

 

那么如果用aaa=avgtruerange, aaa本身也是一个series序列变量,那么

if(aaa>50){buy xxx} 就不是错的吧?

 

也就是说if 和其他循环语句,仅仅是不允许出现 含有序列变量的 《函数》,而不是禁止使用任何序列 《变量》,对吗?

序列变量和全局变量区别
关于序列变量的问题
序列变量
数组和变量序列相互赋值问题
关于IF或者循环程序体内不能用序列变量的疑问
序列变量求解
序列变量和一维数组相互赋值的问题
序列变量,递归问题
序列变量和图表信号
关于多帐号的序列变量的赋值和使用问题

也就是说if 和其他循环语句,仅仅是不允许出现 含有序列变量的 《函数》,而不是禁止使用任何序列 《变量》,对吗?

—— 对的!说的是不要使用序列函数,不是不能使用序列变量。

如果一定要说的话,分支结构里不允许出现容器的存储操作,只能出现容器的读取操作。

因为函数里有计算和容器的存储,而分支结构本质是一种或有结果,不能保证每次运行都执行计算和存储,这就导致序列变量回溯的时候不一定能取到正确的值。