我正在编写一个ICO代码,它应该具有以下功能
发布于 2018-12-19 07:00:17
在功能上,这是相当微不足道的实现。就像这样:
contract Test {
address[] investors;
mapping(address => uint256) private balances;
function saveAddress() payable public {
investors.push(msg.sender);
balances[msg.sender] = msg.value;
}
}在这里,msg.sender是指发送合同的人,msg.value是Ether发送的金额。请注意,您的函数必须是payable才能接收以太。
如果您不需要检索投资者列表,甚至可以删除investors变量-- balances映射将包含每个投资者的投资信息,但您无法从中获得投资者列表。
为了阅读,您不需要任何代码在您的合同-所有的数据在智能合同是直接可读的,即使没有任何明确的代码。您可以使用任何web3库。
用他们的余额节省30000个地址将花费一些汽油。但是,如果数据是存储在任何时候有人投资ICO,天然气成本由投资者支付,所以你真的不需要担心这一点。
是的,您也可以使用任何在线工具,如MEW/Etherscan来读取数据。
https://ethereum.stackexchange.com/questions/64290
复制相似问题