ERC20-标准内容分析

173 阅读1分钟

ERC20 源码

github.com/OpenZeppeli…

ERC20 中的 state 变量

mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
uint256 private _totalSupply;

string private _name;
string private _symbol;
  • _balances: 储存每个地址的余额
  • _allowances: 在_approve()函数中使用,授权给目标地址固定的提款额度
  • _totalSupply(e.g.: 10000000000000000000000000000)
  • _name(e.g.: Matic Token)
  • symbol(e.g.: MATIC)

_appove

erc20-1.png

transfer

public 属性且可以被重写,简单的调用了共用方法获得了 msg.sender 的地址调用了下面的_transfer 函数

erc20-2.png

_transfer

内部函数可以被重写

erc20-3.png

allowance

返回当前地址授权给目标地址金额的uint256值

erc20-4.png

transferFrom

erc20-5.png