Functional-programming-function-overloading
提供:Dev Guides
関数のオーバーロード
同じ名前で異なるパラメーターを持つ複数の関数がある場合、それらはオーバーロードされていると言われます。 この手法は、プログラムの可読性を高めるために使用されます。
関数をオーバーロードするには2つの方法があります。 −
- 引数の数が異なる
- 異なる引数タイプを持つ
関数のオーバーロードは、通常、異なる数または種類の引数を使用して1つの操作を実行する必要がある場合に行われます。
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