函数重载



当我们有多个名称相同但参数不同的函数时,则称之为重载。此技巧用于增强程序的可读性。

有两种函数重载方式,即:

  • 参数数量不同
  • 参数类型不同

通常在具有不同数量或类型的参数时,需要执行单一操作时进行函数重载。

C++ 中的函数重载

以下示例展示了在面向对象编程语言 C++ 中如何进行函数重载:

#include <iostream> 
using namespace std;  
void addnum(int,int); 
void addnum(int,int,int); 

int main() {     
   addnum (5,5); 
   addnum (5,2,8); 
   return 0; 
} 

void addnum (int x, int y) {     
   cout<<"Integer number: "<<x+y<<endl; 
} 

void addnum (int x, int y, int z) {     
   cout<<"Float number: "<<x+y+z<<endl; 
}

它将生成以下输出:

Integer number: 10 
Float number: 15 

Erlang 中的函数重载

以下示例展示了如何在函数式编程语言 Erlang 中执行函数重载:

-module(helloworld).  
-export([addnum/2,addnum/3,start/0]).   

addnum(X,Y) ->  
   Z = X+Y,  
   io:fwrite("~w~n",[Z]).  
    
addnum(X,Y,Z) ->  
   A = X+Y+Z,  
   io:fwrite("~w~n",[A]).  
  
start() ->
   addnum(5,5),     addnum(5,2,8). 

它将生成以下输出:

10 
15 
广告