由于solidity是一个静态类型的语言,所以编译时需明确指定变量的类型(包括本地变量和状态变量),solidity编程语言提供了一些基本类型可以用来组合成复杂类型。
1、值类型(Value Type)
值类型包含:
>布尔(Booleans)
>整型(Integer)
>地址(Address)
>定长字节数组(fixed byte arrays)
>有理数和整型(Rational and Integer Literals,String literals)
>枚举类型(Enums)
>函数(Function Types)
这些类型在传值时,总是值传递,比如在函数传参数,或者在进行变量赋值时。
2、引用类型(Reference Types)
复杂类型,占用空间较大,所以考虑通过引用传递
常见的引用类型有:
>不定长字节数组(Bytes)
>字符串(String)
>数组(Array)
>结构体(Struts)