Lua中的记录类型

Lua中的记录类型,lua,record,lua-table,Lua,Record,Lua Table,我是Lua的新手,但我想要唱片类型。在Lua中定义记录最简单的方法是什么?我需要一些其他数组 比如: Record = {} field = {1,2} table.insert(record,field) print(Record.field) 然后能够读取字段,字段的数量是未知的。我尝试了几种方法,但它们非常复杂或不起作用。我想你指的是类似Pascal语言的记录类型。。。因此,这将起作用: Record = {} field = {1,2} Record.field = field pr

我是Lua的新手,但我想要唱片类型。在Lua中定义记录最简单的方法是什么?我需要一些其他数组

比如:

Record = {}
field = {1,2}
table.insert(record,field)
print(Record.field)

然后能够读取字段,字段的数量是未知的。我尝试了几种方法,但它们非常复杂或不起作用。

我想你指的是类似Pascal语言的记录类型。。。因此,这将起作用:

Record = {}
field = {1,2}
Record.field = field

print(Record.field[1])
print(Record.field[2])
甚至在一个步骤中:

Record.field = {1,2}
除非这两者在实际代码中恰好相距很远

你写的问题是你认为

table.insert(record,field)

将使用“字段”键插入字段中的内容。实际上,代码中只插入了值({1,2})。

记录类型到底是什么?当然你可以有数组的数组,但是在你的例子中,
{1,2}
是什么意思?例如,第一列中的一些值,然后我可以添加另一列2,其中的值为{5,6},我想它应该创建类似于Record=={{1,2},{5,6}
Record={1,2},{5,6}
的东西,然后你可以使用
Record[1][1]
Record[1][2]
等来访问元素。哦,天哪,谢谢你,我总是尝试类似于Record.field[1]或Record[1].field[1]的东西,但还没有尝试过这个……Lua语言没有数组。表是一组键值对。表构造函数语法使创建具有整数键序列(从1开始)的表变得更容易。值可以是任何内容,包括对表的引用。Lua实现确实优化了表序列部分的维护。