小智 6
表构造函数评估表1
=
表构造函数中的"赋值"(符号)仅仅是用于初始化表中字段的语法 - 它们不是变量赋值.语法看起来与之类似=
,但这只是表面上的相似之处:不要混淆两种不同的语法结构.
考虑一下Lua是否使用了与JavaScript相同的语法,那么它就是
t = {x: 2} -- invalid syntax, for argument
Run Code Online (Sandbox Code Playgroud)
并且它将是"清除",x: 2
它不是变量赋值而是字段初始值设定项.当然,Lua语法规定它被写为t = {x = 2}
,但区别思想成立.有两种不同的结构,{x = 2}
表构造函数不会导致副作用或变量赋值.
1如果不能分配表格供以后使用,那就没有多大意义了!由于只有表达式可以出现在赋值的右侧,因此表构造函数必须是表达式,因此结果表(它们是值)可以分配给变量(或传递给函数等).
还要注意Lua 与( C)之类的语言有更强的(赋值)语句和表达式分离.
归档时间: |
|
查看次数: |
117 次 |
最近记录: |