Solidity

如何編寫眾籌合約以將所有未售出的代幣發送到特定地址?

  • February 14, 2018

從我對智能合約的理解來看,似乎沒有辦法設置特定的功能或動作在一定時間後自行觸發,是這樣嗎?

分配未售出的代幣以設置一個這樣做的函式,然後在 ICO 結束日期結束時手動呼叫該函式的唯一方法是嗎?

我找不到這種事情的任何實現,但它肯定是 ICO 中的常用方法嗎?OpenZeppelins “FinalizeAgent” 合約沒有任何幫助,因為它沒有解釋它是如何被觸發的。

謝謝你。

你有沒有想過使用

$$ mintable $$令牌(https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts/token/ERC20/MintableToken.sol)?這樣就沒有未售出的代幣不必擔心燒毀😉 但是,如果你做不到。

那麼是的,你是正確的,智能合約不能觸發自己做某事,因為這需要某種循環。你能想像如果所有智能合約都在循環等待基於時間的事件發生,EVM 會有多糟糕?沒有布埃諾。不僅如此,智能合約無法支付 gas 費用(IIRC 正在開發中或者是 EIP)

直接回答:

function burnTokens() public onlyOwner onlyCrowdsaleOver {
   address(0).transfer(remainingTokens);
}

引用自:https://ethereum.stackexchange.com/questions/39624