Bài giảng Lập trình hướng đối tượng C++ - Chương 4: Hàm (Function) - Đại học Cần Thơ
Bạn đang xem tài liệu "Bài giảng Lập trình hướng đối tượng C++ - Chương 4: Hàm (Function) - Đại học Cần Thơ", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_lap_trinh_huong_doi_tuong_chuong_4_ham_function_da.ppt
Nội dung text: Bài giảng Lập trình hướng đối tượng C++ - Chương 4: Hàm (Function) - Đại học Cần Thơ
- CHƯƠNG 4: HÀM (FUNCTION) Khoa Công Nghệ Thông Tin & Truyền Thông Đại Học Cần Thơ 1
- Chương 4 Hàm ◼ Mục tiêu Mô tả cách khai báo, định nghĩa, và gọi hàm ◼ Nội dung Khai báo hàm, định nghĩa hàm Tham số, đối số, phạm vi Biến tự động, biến thanh ghi, biến nội tuyến Đối số mặc định, đối số hàng lệnh 2
- Chương 4 Hàm Là Gì? ◼ Một phương thức để đóng gói quá trình tính toán → dễ dàng sử dụng ◼ Định nghĩa hàm ◼ Sử dụng hàm Khai báo hàm Gọi hàm ◼ Tên hàm ◼ Tên hàm ◼ Các tham số của hàm ◼ ( ) ◼ Kiểu trả về của hàm ◼ Các đối số Định nghĩa hàm Nhận kết quả trả ◼ Các lệnh về của hàm 3
- Chương 4 Ví Dụ Về Hàm Tên hàm Các tham số 1 int Power(int base, unsigned int exponent) Khai báo hàm 2 { 3 int result = 1; 4 for (int i = 0; i < exponent; ++i) 5 result *= base; Định nghĩa hàm 6 return result; 7 } 8 main (void) Các đối số 9 { 10 cout << "2 ^ 8 = "<< Power(2,8)<< '\n'; 11 12 } Định nghĩa hàm 4
- Chương 4 Phạm Vi Toàn Cục – Cục Bộ ◼ Phạm vi toàn cục int xyz = 1; // xyz là toàn cục void Foo (int xyz) // xyz là cục bộ cho thân của Foo Được định nghĩa ở { if (xyz > 0) { phạm vi chương double xyz =2; // xyz là cục bộ cho khối này cout <<xyz; trình } else { ◼ Phạm vi cục bộ cout<< ::xyz; } Được định nghĩa ở } phạm vi khối hay hàm ◼ Toán tử phạm vi :: 5
- Chương 4 Biến Tự Động – Thanh Ghi ◼ Biến tự động được xác định hoàn toàn tự động Ví dụ: int auto sum; ◼ Biến thanh ghi được lưu trữ trong thanh ghi để tăng hiệu xuất của chương trình Ví dụ: for (register int i = 0; i < n; ++i) sum += i; 6
- Chương 4 Hàm Nội Tuyến – Đệ Qui ◼ Sử dụng hàm Thuận lợi: chương trình dễ đọc, tăng khả năng sử dụng lại, tránh các hiệu ứng phụ Bất lợi: tốn chi phí cho việc gọi hàm →Giải pháp: định nghĩa hàm là nội tuyến (inline) inline int Abs (int n) { return n > 0 ? n : -n; } ◼ Đệ qui int Factorial (unsigned int n) { Một hàm gọi chính nó return n == 0 ? 1 : n * Factorial(n-1); } 7
- Chương 4 Đối Số Mặc Định - Hàng Lệnh ◼ Đối số mặc định bỏ bớt đi gánh nặng phải chỉ định các giá trị của đối số cho tất cả các tham số hàm ◼ Đối số hàng lệnh Có thể nhận không hay nhiều đối số từ hàng lệnh ◼ được tạo ra sẵn cho một chương trình C++ thông qua hàm main ◼ Ví dụ: int main (int argc, const char* argv[]); 8