Solidity高级程序语言里,有定长数组与不定长数组的分类,固定数组是属于值类型,而不定长数组属于引用类型。
数组
数组是数据类型, 但更具体的说,它是依赖其它数据类型的数据结构(数组指的是相同类型的数值组),Solidity中的数组可以是固定数组或者动态数组
数组概念
可以声明时指定长度,或者是变长的。对storage1的数组来说,元素类型可以是任意的,类型可以是数组,映射类型,数据结构等。但对于memory 的数组来说。如果函数是对外可见的,那么函数参数不能是映射类型的数组,只能是支持ABI的类型。
一个类型为T,长度为k的数组,可以声明为T[k],而一个变长的数组则声明为T[]。
你还可以声明一个多维数据,如一个类型为uint的数组长度为5的变长数组,可以声明为uint[][5]
定长数组的代码演示:
不定长数组的代码演示:
0 条评论