我有这个错误“TypeError:返回参数类型地址不能隐式转换为预期类型(第一个返回变量的类型)应付地址。 --> Driven.sol:233:16: | 233 | return msg.sender; | ^^ ^^^^^^^^"
对于以下函数
abstract contract Context {
function _msgSender() internal view virtual returns (address payable) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes memory) {
this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
return msg.data;
}
}
Run Code Online (Sandbox Code Playgroud)
请帮忙!
从 Solidity 0.8 开始,msg.sender就不再是payable这样了。您需要先将其投射到payable。
function _msgSender() internal view virtual returns (address payable) {
return payable(msg.sender); // added payable
}
Run Code Online (Sandbox Code Playgroud)
或者您可以只退货address(无需付费):
function _msgSender() internal view virtual returns (address) { // removed payable
return msg.sender;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2989 次 |
| 最近记录: |