在实体合同中,this.balance与address(this).balance的区别是什么?
发布于 2018-09-07 18:20:46
this表示当前合同的“契约实例”对象。balance函数是"address“对象的一部分。您过去能够执行this.balance,因为solidity允许通过契约实例对象隐式访问address函数。
但是,从稳固性0.4.22开始,推荐做法将使用address(this).balance,它显式地将this (当前契约实例)转换为address对象。
在坚实的0.5.0,this.balance将被明确禁止,在访问address对象的函数之前,您将被要求显式地转换为address对象。
由于历史惯例,您可能会发现使用旧语法的代码,但对于编写的任何新契约,您应该使用现代语法。
发布于 2020-11-23 15:59:13
我必须用这个,但是我在Energi链上
坚实度0.7.5
退货(应付(地址(此)).balance;
https://ethereum.stackexchange.com/questions/58298
复制相似问题