创建合约
集成开发环境,如 Remix,使用UI元素使创建过程无缝化。
在以太坊上以编程方式创建合约的一种方法是通过JavaScript API web3.js。 它有一个名为 web3.eth.Contract 的函数, 以方便创建合约。
可见性和 getter 函数
状态变量的可见性
public
internal
private
函数的可见性
external
public
internal
private
常量和不可变状态变量
状态变量可以被声明为 constant 或 immutable。
返回多个值
当一个函数有多个返回类型时,语句 return (v0, v1, ..., vn) 可以用来返回多个值。 声明的数量必须与返回变量的数量相同,并且它们的类型必须匹配, 有可能是经过 隐式转换。
状态可变性
View 函数
函数可以被声明为 view,在这种情况下,它们承诺不修改状态。
Pure 函数
函数可以被声明为 pure,在这种情况下,它们承诺不读取或修改状态。
Fallback 函数
fallback() 是当一个合约接收到未知调用(或不带 calldata 的 ETH)时自动执行的函数。