问一个关于数组的低级问题
子程序里面循环里面分割文本的数组 是不是勾选静态就可以自动清空 还是每次用完需要等于空对象 每次进去我害怕加入成员接着后面加导致数组越来越多循环里面的局部变量,跳出循环,或循环结束,就会清除,下次循环会重新创建 李先森 发表于 2022-5-3 19:53
循环里面的局部变量,跳出循环,或循环结束,就会清除,下次循环会重新创建 ...
是火山特有的风格 需要在循环代码里面新建变量是吧 放在头部不行吧 循环子语句体里定义的变量,每一次运行完子语句体里的命令,就会自动销毁,下一次循环又重新创建。
所以你的数组是不会越来越多的。
但如果你勾选了静态,那这个变量是不会销毁的,肯定会越加越多 你需要了解变量的作用域,放在子程序头部的 整个子程序内都可以用,生命周期是子程序结束。放在循环代码头部的是只能在循环里面用,生命周期是循环结束,不同位置创建的变量,其作用域和生命周期是不同的,其实这样更合理,更高效 变量在超出其作用域的时候就会被释放,静态的不一样,不会被释放,静态相当于易语言的全局变量
定义在循环体内的非静态变量,在每次进入循环体的时候会被创建,出来了释放,循环几次就创建几次释放几次.
勾选静态应该就不会清空了,不要勾选静态 因为火山变量随用随建,和易语言在方法顶部统一创建是不一样,所以变量离开作用域就会销毁,所以不用担心, 李先森 发表于 2022-5-3 20:17
因为火山变量随用随建,和易语言在方法顶部统一创建是不一样,所以变量离开作用域就会销毁,所以不用担心, ...
我就是不喜欢这种 定义和代码混合的 看来只能接受这种方式了 这样才可以清空是吧 我都习惯放在子程序头部定义 好看 看你变量放的位置,如果放在循环里,那每次循环结束都会清除,放在循环外面,方法里面,在方法执行完会清除。放在类里,那么就一直都在类里存在,一级管一级
页:
[1]
2