WETH9 合约的部署与调用
目前在用的主网WETH9合约写于2015年,非常老,那时候solidity是0.4版本。
用户直接向WETH9合约转账,即可将转账数量的ETH转为等量的WETH。
部署之后如下图:

- 调用
totalSupply
可以看到当前合约中WETH代币的数量,可以看到下图输出为0。

- 使用Metamask向合约地址发送10个ETH:

回到Remix,在左侧balanceOf填入发交易的地址,调用balanceOf方法,可以看到得到数值10^19:

代码中声明了decimals = 18;
,小数点后18位,意为合约中1个WETH在为10^-18个ETH。那么我们发了10个ETH,获得了10^19个WETH。
向另一个账户转1个WETH,先查看另外一个账户的余额,可以看到当前另外一个账户的余额是2:

转账:

再查余额,可以看到变成了3:

卖掉WETH,赎回ETH,调用withdraw:

可以看到ETH又回来了:
