繁体   English   中英

ERC20令牌中的分配功能可以在以后执行吗?

[英]Distribution function in ERC20 token which can be executed on a later stage?

我需要在ERC20令牌代码中实现Distribute函数,该函数在执行时将在地址数组上发送相等数量的令牌。 下面是我将为此使用的源代码。 当然,我将更改令牌的变量:

https://pastebin.com/wAe9a1EV

我在合同末尾添加的Distribute函数是否合适并且不会干扰其余的源代码? 如果我将具有该功能的合同部署在区块链上,可以在以后通过Myetherwallet或Mist使用该功能执行分发吗?

 function distributeToken(address[] addresses, uint256 _value) onlyOwner{
 for (uint i = 0; i < addresses.length; i++) {
 balances[owner] -= _value;
 balances[addresses[i]] += _value;
 Transfer(owner, addresses[i], _value);
 }
}

最好有一个Claim函数,并让用户调用该函数以获取其令牌,而不是让所有者尝试分发它们。 拥有者为分发代币而必须支付的汽油量将是惊人的。

最好在hser将以太币发送给合约后立即发出令牌。

确保为该功能添加了一些健全性检查,应该进行一些基本检查以避免用户错误。

例如

require(_value > 0);
require(balances[owner] >= (_value * addresses.length));

// In your loop
require(addresses[i] != 0x0);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM