变量
变量是铁锈中一种数据存储方式,于1.14被加入。
不同于内存,变量的值是固定的,在ini中定义后无法修改。
定义
在[core]中,使用@global 名称:值可以定义全局变量。而在任何节(注释节除外),都可以使用@define 名称:值定义局部变量。
| 变量定义例子 |
|---|
[core] @global a:100 @global b:qwerty [action_x] @global c:10.0 |
类型
铁锈中,变量包含全局变量和局部变量两种,其作用域不同。全局变量在整个ini中都能进行引用,而局部变量只能在定义该变量的节引用。同一个单位中不同的节可以定义名称相同的局部变量,而互不影响。当全局变量和局部变量重名时,局部变量优先级更高,能够在该局部变量所处的节覆盖全局变量。变量本身并不存在“数据结构类型”,本质上变量只是一个替换工具,在加载时引用的变量被替换为定义的值。
| 局部变量和全局变量例子 |
|---|
[core]
@global a:10
@global b:20
[action_a]
@define a:15
#此时 ${a} 为 15
[action_b]
#此时 ${a} 为 10
#此时 ${b} 为20
|
引用
通过${变量名}可以引用变量。任何代码的值中都可以进行变量引用,但是必须保证该代码值的类型在引用后不会错误。%{}中也可以嵌套变量引用。
| 变量引用例子 |
|---|
[action]
@define time:0
@define str1:测
@define str2:试
text: -${str1}${str2}
#此时text的值为 -测试
buildSpeed:${time}
|