例子一
- x = 1
- y = x
- y = 10
- print(x)
- 输出:1
例子二
- <pre name="code" class="java">function change(x)
- x = 10
- end
- y = 1
- change(y)
- print(y)
- 输出:1
例子三
- x = "test"
- y = x
- x = "show"
- print(y)
- 输出:test
例子四
- x = {abc = "123",456}
- y = x
- x.abc = "xixi"
- print(y.abc)
- 输出:xixi
例子五
- function show()
- print("show some thing")
- end
- function move()
- print("move to")
- end
- x = show
- y = x
- x = move
- y()
- x()
- 输出:show some thing
- move to
例子六
- x = {123,"test"}
- y = x[1]
- x[1] = 456
- print(y)
- 输出:123
从上面的例子可以看出来,只有例子四相当于:传引用. 例子一,二,三,五,六都是:传值
所以可以说明:只有table是传引用(相当于一个指针a将地址传给指针b,它们所指向的内容都是一样的)
转自 https://blog.csdn.net/qweewqpkn/article/details/46728589