Solidity - 函数重载



在相同的范围内,您可以为同一个函数名定义多个函数。函数的定义必须通过参数列表中参数的类型和/或数量来区分。您不能重载仅返回值类型不同的函数声明。

以下示例展示了 Solidity 中函数重载的概念。

示例

pragma solidity ^0.5.0;

contract Test {
   function getSum(uint a, uint b) public pure returns(uint){      
      return a + b;
   }
   function getSum(uint a, uint b, uint c) public pure returns(uint){      
      return a + b + c;
   }
   function callSumWithTwoArguments() public pure returns(uint){
      return getSum(1,2);
   }
   function callSumWithThreeArguments() public pure returns(uint){
      return getSum(1,2,3);
   }
}

使用Solidity 第一个应用章节中提供的步骤运行以上程序。

首先点击 callSumWithTwoArguments 按钮,然后点击 callSumWithThreeArguments 按钮查看结果。

输出

0: uint256: 3
0: uint256: 6
广告