Nạp chồng hàm
Thuộc phần Kiến thức nền tảng trong hành trình C++ của Coddy. Bài học 54 trên 74.
Nạp chồng hàm (function overloading) là một tính năng trong C++ cho phép hai hàm trở lên có cùng tên nhưng khác tham số. Khi bạn gọi một hàm được nạp chồng, trình biên dịch C++ sẽ xác định định nghĩa phù hợp nhất bằng cách so sánh kiểu dữ liệu của các đối số bạn dùng trong lời gọi với kiểu dữ liệu của các tham số được chỉ định trong các định nghĩa. Nếu không tìm thấy hàm phù hợp, trình biên dịch sẽ báo lỗi.
Đây là một ví dụ về nạp chồng hàm (function overloading):
int add(int a, int b) {
return a + b;
}
double add(double a, double b) {
return a + b;
}
int main() {
int sum1 = add(5, 3); // Gọi phiên bản đầu tiên của add
double sum2 = add(2.5, 3.7); // Gọi phiên bản thứ hai của add
return 0;
}Trong ví dụ này, chúng ta có hai hàm tên là add. Một hàm nhận hai tham số int, hàm còn lại nhận hai tham số double. Tùy vào kiểu dữ liệu của các đối số mà chúng ta truyền vào add, phiên bản hàm phù hợp sẽ được gọi.
Điều quan trọng cần lưu ý là chỉ riêng kiểu trả về không đủ để nạp chồng một hàm (function). Các hàm phải có danh sách tham số khác nhau.
Tự làm thử
Bài học này không có thử thách code.
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Kiến thức nền tảng
Tự luyện tập: Trình biên dịch C++ online