ERC20令牌在没有所有者的情况下成功部署

时间:2019-07-22 06:50:25

标签: ethereum solidity truffle erc20

当我在Etherscan上进行检查时,我已将我的ERC20代币合约部署到Rospten网络上,但看不到我的帐户出现在“持有人”列表中。为什么会这样?

  

0x88BAcDE95d741729aaF399e75ac14dB971f72f30

请告知

Snapshot

ERC20 Token source code

2 个答案:

答案 0 :(得分:0)

部署ERC20合同并不能使您的地址成为令牌的持有人。

尽管您是合同的所有者,但是您可以mint令牌到您的帐户。

答案 1 :(得分:0)

Etherscan通过监视Transfer事件来确定令牌余额。在您的构造函数中:

constructor()
    public
{
    totalSupply_ = INITIAL_SUPPLY;
    balances[msg.sender] = totalSupply_;
}

您正在将totalSupply_分配到msg.sender的余额中,但是没有发出事件,Etherscan并不知道这一点。

处理令牌铸造事件的典型方法是将转移显示为源自0x00。将以下行添加到构造函数中,余额应在Etherescan和其他区块浏览器上正确显示。

emit Transfer(address(0), msg.sender, totalSupply_);