调用映射getter时,Solidity函数错误的参数数目无效

时间:2018-08-18 20:30:19

标签: mapping getter solidity

具有如下映射:

mapping(address => uint[]) public myMapping

自动创建一个吸气剂。但是,当我这样称呼该吸气剂:myMapping(anAddress)时,出现以下错误:

  

错误:Solidity函数的参数数量无效

该如何解决?

1 个答案:

答案 0 :(得分:1)

创建的吸气剂是myMapping(anAddress, anIndex)而不是myMapping(anAddress)。因此,无法立即获取所有阵列。相反,调用者应提供索引作为第二个参数,以使元素位于提供的索引处。

示例:

假设uint数组分别具有四个元素,分别为anAddress,2、3、5、7:

myMapping(anAddress, 2)返回5。myMapping(anAddress, 3)返回7。