Hàm do người dùng tự định nghĩa trong C++
Trong C++, ngoài những hàm có sẵn, chúng ta còn có thể tự định nghĩa một hàm theo nhu cầu của bạn. Để tìm hiểu về cách khai báo, cách tự định nghĩa hàm như thế nào, mời bạn đọc tham khảo bài viết dưới đây của eLib.VN
Mục lục nội dung
1. Hàm tự định nghĩa là gì?
Hàm là một khối mã thực hiện một tác vụ cụ thể.
C++ cho phép bạn định nghĩa các hàm theo nhu cầu của bạn. Các hàm này được gọi là các hàm do người dùng định nghĩa. Ví dụ: Giả sử, bạn cần phải tạo một vòng tròn và tô màu cho nó. Bạn có thể tạo hai hàm để giải quyết vấn đề này:
- Hàm createCircle()
- Hàm color()
2. Ví dụ
Đây là ví dụ để tính tổng 2 số nguyên. Để thực hiện tác vụ này, một hàm do người dùng định nghĩa addNumbers() được định nghĩa.
#include <iostream>
using namespace std;
// nguyen mau (prototype) cua ham adNumnbers()
int addNumbers(int a, int b);
int main() {
int n1, n2, sum;
cout << "Nhap so nguyen n1: ";
cin >> n1;
cout << "Nhap so nguyen n2: ";
cin >> n2;
// goi ham
sum = addNumbers(n1, n2);
printf("sum = %d", sum);
return 0;
}
// dinh nghia ham
int addNumbers(int a,int b) {
int result;
result = a + b;
return result;
}
Kết quả:
Nhap so nguyen n1: 2
Nhap so nguyen n2: 3
sum = 5
3. Nguyên mẫu (prototype) của hàm
Một nguyên mẫu hàm chỉ đơn giản là khai báo một hàm xác định tên, tham số và kiểu trả về của hàm. Nó không chứa thân hàm.
Một nguyên mẫu hàm cung cấp thông tin cho trình biên dịch để chức năng này có thể được sử dụng sau này trong chương trình.
Cú pháp của nguyên mẫu hàm
return_type function_name (type1 argument1, type2 argument2, ...);
Trong ví dụ trên, int addNumbers(int a, int b); là prototype nguyên mẫu cung cấp thông tin sau cho trình biên dịch:
- Tên hàm là addNumbers()
- Kiểu trả về của hàm là int
- Hai đối số của kiểu int được truyền cho hàm
Trên đây là bài viết của eLib.VN về hàm do tự người dùng định nghĩa. Trong quá trình lập trình, sẽ có những trường hợp bạn không thể sử dụng những hàm có sẵn, vì vậy bạn cần tự định nghĩa cho mình những hàm để đáp ứng nhu cầu của bản thân. Hy vọng bài viết hữu ích cho bạn.
Tham khảo thêm
- doc Hàm trong C++
- doc Các loại hàm trong C++
- doc Đệ quy trong C++
- doc Call by value & Call by reference trong C++