据结构结构定义,
lua只有一种数据结构,真是太好了,以前学习数组啊,结构啊,类啊,再加上以后的vector,map啊,头都搞大了,
看个例子,这个就是lua学习的最基本的一个例子。
myData =
{}
--如果不要这句恐怕不行
myData[0] = “foo”
--在table中可以放置任意类型数值。
myData[1] = 42
myData[“bar”] = “baz”
--还可以在[]中下标为字符的,这个就像map了,
for key, value in myData do
--对table中的所有值遍历
print(key .. “=“ ..
value) --打印table时,要这样写吗?来2个点?
end
---
table的引用
如果
a = {}
a[“test”] = “test”
b=a
b就是a的引用,指向同一个内存区
a=nil 实际好像就是把指针给释放了,
内存体还是没有
b=nil 再也
指不到内存区了,可见,内存区是自动管理的,不需要自己去创建和释放,拿来用就是。
----
table可以嵌套
mytable ={
close = “red“
{xpos = 0,
--这样看去就像结构了,
ypos = 0
}
}
---------------------
继续看demo
function contact(t)
end
contact {
name = "kenlistian"
url = "http:\\www.cppblog.com"
quote = [[
test
test
test
]]
contact{
}
刚看到这个代码看不懂,稍微解释一下,
[[。。。]] 表示多行字符串,(咳,麻烦)
function 咋和table在一起,这个函数好像通过多个contact达到保存
多条记录的可能。
笔记记录介绍到此。