Sự quá tải hàm (function overloading) trong C++ là khả năng định nghĩa nhiều hàm cùng tên nhưng có các tham số khác nhau về kiểu hoặc số lượng. Điều này cho phép lập trình viên sử dụng cùng một tên hàm cho các chức năng tương tự, làm cho mã nguồn trở nên dễ đọc và dễ hiểu hơn.
### Ví dụ minh họa:
```cpp
#include <iostream>
using namespace std;
// Hàm cộng hai số nguyên
int add(int a, int b) {
return a + b;
}
// Hàm cộng hai số thực
double add(double a, double b) {
return a + b;
}
// Hàm cộng ba số nguyên
int add(int a, int b, int c) {
return a + b + c;
}
int main() {
cout << add(5, 3) << endl; // Gọi hàm cộng hai số nguyên
cout << add(5.5, 2.5) << endl; // Gọi hàm cộng hai số thực
cout << add(1, 2, 3) << endl; // Gọi hàm cộng ba số nguyên
return 0;
}
```