概述
1.lua中表table的赋值实质为引用
lua代码举例如下
local TabA = {["a"] = 1,["b"] = 2}
local TabB = TabA--将TabA赋值给TabB
print(TabA.a)
print(TabB.a)
TabB.a = 5--此处对表TabB进行操作
print(TabA.a)
print(TabB.a)
print("~~~~~~~~~~~~~~~~~~~~~~~~~")
local NumA = 1
local NumB = NumA
NumB = 5
print(NumA)
print(NumB)
lua代码运行结果如下!
可以看出在lua中,将table进行赋值其实是引用,进行任何操作都会影响到原来的table。
将临时变量进行赋值就是复制了一份,不会影响到原来的变量。
2.测试代码:
dataconfig_store = {}
local local_dataconfig_store = dataconfig_store
local_dataconfig_store[1] = { id = 1, name = "8钻石", name_zh = "8钻石"}
local a = dataconfig_store[1]
a.name = "aabb"
print(dataconfig_store[1].name)
lua代码运行的结果为 “aabb”,再次验证了 “将table进行赋值其实是引用,进行任何操作都会影响到原来的table”
3.Lua 对多个变量同时赋值,不会进行变量传递,仅做值传递。
测试代码:
a, b = 0, 1
a, b = a+1, a+1
print(a,b) --> 1 1
a, b = 0, 1
a, b = b+1, b+1
print(a,b) --> 2 2
a, b = 0, 1
a = a+1
b = a+1
print(a,b) --> 1 2
参考原文链接:https://blog.csdn.net/Qinhaifu/article/details/87913310
最后
以上就是单薄御姐为你收集整理的关于Lua中的变量赋值的全部内容,希望文章能够帮你解决关于Lua中的变量赋值所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复