我正在尝试使用Solidity 0.4.4创建智能合约。

我想知道是否有一种方法可以将已输入一些值的映射设置为空值?

例如:

这将引发新的冲击
mapping (uint => uint) map;
在这里我添加一些值
map[0] = 1;map[1] = 2;
如何在不迭代所有键的情况下将地图重新​​设置为空?

我尝试通过合同删除的无法编译

最佳答案

不幸的是,你不能。有关原因的详细信息,请参见Solidity documentation。您唯一的选择是遍历键。

如果您不提前知道密钥集,则必须将密钥保存在合同内的单独数组中。

关于ethereum - 实体将映射设置为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48045784/

10-12 20:31