美文网首页践行区块链
Solidity v7.0 的一些变动

Solidity v7.0 的一些变动

作者: Ashton | 来源:发表于2020-09-07 21:35 被阅读0次

最近注意到 Solidity 最新版本已经到 7.x 了。今天抽空看了一下,感觉这次大版本升级的变动还是不大的,基本都是小的语法升级,没什么太大变化。不过有些不兼容的改动还是要注意一下。

0x01 合约调用的变动

之前合约调合约时是通过下面的方式来发送 gas 费和要转账的 eth 的。

x.f.gas(10000).value(2 ether)(arg1, arg2)

新的方式变成了下面这样:

x.f{gas: 10000, value: 2 ether}(arg1, arg2)

老的方式会报错。

0x02 使用 block.timestamp 来替代 now

now 本来就是与 block.timestamp 是等价的,使用 now 容易让人认为时间和交易有关,实际上只与区块有关。直接使用 block.timestamp 更不容易出错。

0x03 gwei 为关键字

之后不能用 gwei 为变量标识符了,实际上大家也确实很少使用 gwei 做标识符,不过作为计量单位确实很常用。

0x04 构造函数没必要声明为 public 或 external 的了

不想被调用的构造函数可以声明为 abstract

相关文章

网友评论

    本文标题:Solidity v7.0 的一些变动

    本文链接:https://www.haomeiwen.com/subject/blxrektx.html