【发布时间】:2015-07-09 16:37:48
【问题描述】:
我正在为Oxide 2 开发一个插件。我一直在向其他插件学习,我注意到其中一些使用null 而不是nil。例如:
if args[1] == null then
Oxide 2 是用 C# 编写的,所以我假设 null 是在 C# 或 Lua 接口中定义的。
它们之间有什么区别吗?
更新:
我在某处读到它可以用于检查,如果 MySQL 列是NULL。这是真的吗?
【问题讨论】:
-
您的意思是
var = nil和var = null?除非有任何特殊的嵌入细节null只是一个变量(它可能没有值,所以将是nil)但可以正常分配给其他方式。例如,在普通的 lua 解释器中尝试print(null); null = "foo"; print(null)。 -
@EtanReisner 起初它打印的是
null,但修改后它打印的是foo。所以它似乎是一个正常的变量。 -
在普通 lua 中是这样。我无法谈论 Oxide 在嵌入它时做了什么,或者某些库是否使用
null作为一些特殊的哨兵。
标签: lua null luainterface