基于以太坊的智能合约开发教程 Solidity 函数重载

基于以太坊的智能合约开发教程 Solidity 函数重载

pragma solidity ^0.4.19;

contract overlode{
    
// 函数的重载:
// 1 函数名字相同
// 2 函数的参数不同(类型,数量)
// 3 不考虑函数的返回值是否相同
    
  
    //  fun1编译有问题
    // function fun1(){
        
    // }
    
    // function fun1(){
        
    // }
    
    
     //  fun2编译有问题
    // function fun2() returns(uint){
        
    // }
    // function fun2() returns(string){
        
    // }
    
    
    //  fun3编译没问题
    function fun3(uint name){
        
    }
    function fun3(){
        
    }
    
    //  fun4编译没问题
    function fun4(uint name){
        
    }
    function fun4(uint8 name){
        
    }
    
    uint public a= 0;
    //两个重载函数
    function test1(uint num){
        a= 100;
    }
   function test1(uint8 num){
        a= 200; 
    }
   function testIt(){
       //test1(100);   //编译不能够通过,无法明确是哪一个
       test1(256);   //编译可以通过
       
    }   
    
    
    
    
    
}

Guess you like

Origin blog.csdn.net/qq_43537319/article/details/121235136