函数状态可变性

gwyhonor 发布于 2026-06-08 阅读 110

函数的可变性有3个关键字:pure:用pure修饰的函数,称为纯函数,它既不能读取也不能修改状态。view:用view修饰的函数,称为视图函数,它只能读取状态,而不能修改状态。空白(缺省):既能读取也能修改状态payable:用payable修饰的函数表示可以接受以太币,如果

函数的可变性有 3 个关键字: pure:用 pure 修饰的函数,称为纯函数,它既不能读取也不能修改状态。 view:用 view 修饰的函数,称为视图函数,它只能读取状态,而不能修改状态。 空白(缺省):既能读取也能修改状态 payable:用 payable 修饰的函数表示可以接受以太币,如果未指定,该函数将自动拒绝所有发送给它的以太币。

修饰符 读状态 改状态 收 ETH 花 gas
pure
view
空白
payable

从上到下依次权限变大,缺省和payable涉及到修改状态值就会花费gas。 函数可变性设置的主要目的是:对函数进行明确的状态读写权限划分,减少错误操作,对合约这种不可更改的特性非常重要,合约出现bug的成本是非常高的。对bug率的降低起到了重要作用。

相关文章

0 条评论