【问题标题】:Solidity return null valueSolidity 返回空值
【发布时间】:2021-01-18 17:44:58
【问题描述】:

我是 Solidity 的新手,我正在努力研究如何返回空值或空值。

我有一个合同 prestataire.sol(地址作为参数之一)和一个合同 plateform.sol,其中我有一个 prestataires 列表。

我正在尝试检查特定地址是否指的是 prestataire。如果地址正确,我想返回 (true, myPrestataire),如果地址不正确,我想返回 (false, null)。

但在 Solidity 中,我不能返回 null,它会引发错误。我也试过什么都不返回,但这也没有用。

这是我的功能:

function isPrestataire(address checkAdresse) private view returns (bool, prestataire) {
  for (uint i = 0; i < prestataires.length; i++) {
    if (prestataires[i].getAccount() == checkAdresse) return (true, prestataires[i]);
  }
  return (false,  null);//fails
  // return (false); fails also
}

【问题讨论】:

    标签: null return solidity return-type


    【解决方案1】:

    好的,我发现了我的问题。

    //prestataires is a global list of prestataire
    
    function isPrestataire(address checkAdresse) private view returns (bool, prestataire) {
      prestataire p;
      for (uint i = 0; i < prestataires.length; i++) {
        if (prestataires[i].getAccount() == checkAdresse) return (true, prestataires[i]);
      }
      return (false,  p);
    }
    

    【讨论】:

      猜你喜欢
      • 2019-01-05
      • 2019-08-15
      • 1970-01-01
      • 2021-07-07
      • 2022-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-21
      相关资源
      最近更新 更多