Quá tải chức năng
Khi chúng ta có nhiều hàm có cùng tên nhưng khác tham số, thì chúng được cho là quá tải. Kỹ thuật này được sử dụng để nâng cao khả năng đọc của chương trình.
Có hai cách để nạp chồng một hàm, tức là -
- Có số lượng đối số khác nhau
- Có các loại đối số khác nhau
Nạp chồng hàm thường được thực hiện khi chúng ta phải thực hiện một thao tác đơn lẻ với số lượng hoặc kiểu đối số khác nhau.
Nạp chồng hàm trong C ++
Ví dụ sau đây cho thấy cách thực hiện nạp chồng hàm trong C ++, là một ngôn ngữ lập trình hướng đối tượng:
#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;
}
Nó sẽ tạo ra kết quả sau:
Integer number: 10
Float number: 15
Nạp chồng hàm trong Erlang
Ví dụ sau đây cho thấy cách thực hiện nạp chồng hàm trong Erlang, là một ngôn ngữ lập trình hàm:
-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).
Nó sẽ tạo ra kết quả sau:
10
15