我是solidity 的新手,并尝试使用openzepplin 部署ERC20 令牌。对我来说没有意义的一件事是context.sol 文件。从评论部分看来,context.sol 的主要功能是实现 GSN 兼容的合同,因此您可以使用 _msgSender() 而不是使用 msg.sender
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}
根据我对solidity 的有限经验,似乎对msg.sender 做同样的事情。