我读过一些文章,说建议使用address.call.value().gas()()发送以太,然而,一些人说call.value是一个非常低级的函数,应该作为最后的手段使用,因为它破坏了安全的类型。
address.call{value: amount}("")似乎是一种较新的发送以太的方式,但它与.call.value有何不同?
发布于 2022-02-19 13:51:33
除了语法上的差异外,address.call.value().gas()()和address.call{value: amount}("")之间没有区别。
使用坚实度0.6.4时,不推荐使用.value().gas()符号。
在Github:https://github.com/ethereum/solidity/issues/2136#issuecomment-559196297上对这个语法进行了更长时间的讨论,下面是新语法实现时的PR:https://github.com/ethereum/solidity/pull/8177
https://ethereum.stackexchange.com/questions/122037
复制相似问题