基于以太坊的智能合约开发教程 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); //编译可以通过
}
}