Solidity 函数重载

Solidity的函数重载,是指同一个作用域内,相同函数名可以定义多个函数。

这些函数的参数(参数类型或参数数量)必须不一样。仅仅是返回值不一样是不被允许。

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

示例

// SPDX-License-Identifier: MIT 
pragma solidity ^0.8.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);
   }
}

运行上述程序:

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

输出:

0: uint256: 3 0: uint256: 6

Solidity 也提供了内置的数学函数。下面是常用的数学函数:addmod(uint x, uint y, uint k) returns (uint) 计算(x + y) % k,计算中,以任意精度 ...