我刚开始踏实,还没有找到解决这个问题的办法。
我向函数传递一个地址,但它说:“函数调用中参数的类型无效。从地址到地址的隐式转换无效。”
address admin;
function endSale() public {
require(msg.sender == admin);
selfdestruct(admin);
}发布于 2020-06-02 04:55:53
在合同的其他地方,找到address admin;并声明为address payable admin;。
或者,selfdestruct(msg.sender);,因为require(msg.sender == admin);确保它们是相同的,并且msg.sender应该被支付。
发布于 2018-12-13 21:02:02
从Solity0.5.0开始,Solidity中有两种不同的地址类型:address和address payable。
您只能将资金转移到address payable。
因此,您的问题将通过使admin成为address payable来解决:
address payable admin;发布于 2019-01-23 08:17:44
您可以使用以下代码强制转换为address payable:
selfdestruct(address(uint160(admin)));selfdestruct(payable(admin));https://ethereum.stackexchange.com/questions/64051
复制相似问题