Bài giảng Lập trình hướng đối tượng C++ - Chương 4: Hàm (Function)

ppt 8 trang huongle 5480
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)", để 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:

  • pptbai_giang_lap_trinh_huong_doi_tuong_c_chuong_4_ham_function.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)

  1. CHƯƠNG 4: HÀM (FUNCTION) Khoa Công Nghệ Thông Tin & Truyền Thông Đại Học Cần Thơ 1
  2. 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
  3. 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
  4. 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
  5. 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
  6. 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
  7. 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
  8. 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