Solidity
Crowdsale,如何計算硬頂?
我正在閱讀這篇關於 Crowdsale 的文章。
簡單地說,要鑄造100 個代幣。作者設定60%的代幣作為公開發售分發。更具體地說,60 個代幣中的20
PreICO
個將在 期間出售,60 個中的40個將在ICO
.按照匯率,
在 中
PreICO
,1 ETH 可以購買 5 個代幣,並且中
ICO
,1 ETH 可以購買 2 個代幣。總結一下,
PreICO
上限為 4 ETH(4 ETH * 5 代幣 = 20 代幣),並且
ICO
上限為 20 ETH(20 ETH * 2 代幣 = 40 代幣)。
weiRaised
因此,公開發售的總數量上限為 24 ETH,這意味著當達到 24 ETH時,投資者應該無法購買更多代幣。但是,作者將其硬上限設置為 500 ETH,但不是應該改為 24 ETH 嗎?
通過快速瀏覽,
function () external payable
它似乎沒有對可以發送多少乙太幣實施限制(preICO 除外)。沒有給出實現,buyTokens
所以很難說那裡是否有一些限制。通常有兩種類型的硬上限:基於代幣數量和基於乙太數量。眾籌不應該需要基於這兩種類型的上限——只需要其中一種。我認為乙太幣數量是最典型的類型,因為創建代幣是免費的,但你可能想限制你收到的乙太幣數量。
因此,即使合約有“錯誤的”乙太硬上限,它仍然受到代幣數量的限制,因此乙太硬上限有多高並不重要,因為它永遠無法達到。甚至有人會說它沒用。