Bài giảng Phương pháp lập trình hướng đối tượng - Chương 6: Template, Thư viện C++
lượt xem 9
download
Nhằm giúp các bạn sinh viên và các giáo viên có thêm tài liệu tham khảo. Dưới đây là bài giảng Phương pháp lập trình hướng đối tượng chương 6: Template,Thư viện C++ trình bày về function Template, class Template, thư viện C++, đặc điểm của Function Template, xét lớp đối tượng Mang, thư viện STL, tham số hóa kiểu dữ liệu.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Phương pháp lập trình hướng đối tượng - Chương 6: Template, Thư viện C++
- Template, Thư viện C++ Phương pháp lập trình hướng đối tượng. 1
- Nội dung Function Template. Class Template. Thư viện C++. Bài tập. Phương pháp lập trình hướng đối tượng. 2
- Nội dung Function Template. Class Template. Thư viện C++. Bài tập. Phương pháp lập trình hướng đối tượng. 3
- Function Template Xét hàm tìm min giữa 2 số: int timMin(int a, int b) { Tìm min Tìm min return (a < b) ? a : b; } hai số thực? hai số thực? float timMin(float a, float b) { Tìm min Tìm min return (a < b) ? a : b; } hai phân số? hai phân số? PhanSo timMin(PhanSo a, PhanSo b) { Có cách nào Có cách nào return (a < b) ? a : b; đơn giản đơn giản } hơn? hơn? Dùng Function Template!! Phương pháp lập trình hướng đối tượng. 4
- Function Template Hàm tìm min dùng Function Template: template T timMin(T a, T b) void main() { { return (a < b) ? a : b; int a = 5, b = 3; } int c = timMin(a, b); float d = timMin(1.5, 2.3); PhanSo p1(1, 2); PhanSo p2(1, 3); PhanSo p3 = timMin(p1, p2); } Phương pháp lập trình hướng đối tượng. 5
- Function Template Đặc điểm của Function Template: Hàm tổng quát cho nhiều kiểu dữ liệu khác nhau. Tham số hóa kiểu dữ liệu. Kiểu cụ thể được quyết định khi gọi hàm. Ghi chú: Từ khóa “class” có thể thay bằng “typename”. Phần khai báo và cài đặt đều có khai báo template. Phần cài đặt hàm phải nằm cùng file: Phần khai báo hàm. Phần gọi sử dụng hàm. Phương pháp lập trình hướng đối tượng. 6
- Nội dung Function Template. Class Template. Thư viện C++. Bài tập. Phương pháp lập trình hướng đối tượng. 7
- Class Template Xét lớp đối tượng Mang: class MangNguyen { private: int m_kichThuoc; Dùng Class Template!! int *m_duLieu; public: Mang(int kichThuoc); int layPhanTu(int viTri); Mảng Mảng }; phân số? phân số? class MangPhanSo { private: int m_kichThuoc; PhanSo *m_duLieu; public: Mang(int kichThuoc); Có cách nào Có cách nào PhanSo layPhanTu(int viTri); đơn giản đơn giản }; hơn? hơn? Phương pháp lập trình hướng đối tượng. 8
- Class Template Lớp Mang dùng Class Template: template class Mang void main() { { private: Mang m1(10); int m_kichThuoc; int a = m1.layPhanTu(5); T *m_duLieu; public: Mang m2(5); Mang(int kichThuoc); PhanSo p = m2.layPhanTu(2); T layPhanTu(int viTri); } }; Phương pháp lập trình hướng đối tượng. 9
- Class Template Đặc điểm của Class Template: Lớp tổng quát cho nhiều kiểu dữ liệu khác nhau. Tham số hóa kiểu dữ liệu. Kiểu cụ thể được truyền vào khi tạo đối tượng. Ghi chú: Từ khóa “class” có thể thay bằng “typename”. Phần cài đặt lớp phải nằm cùng file: Phần khai báo lớp. Phần tạo và sử dụng đối tượng của lớp. Viết cài đặt bên trong lớp khi dùng Template. Phương pháp lập trình hướng đối tượng. 10
- Nội dung Function Template. Class Template. Thư viện C++. Bài tập. Phương pháp lập trình hướng đối tượng. 11
- Thư viện C++ Khái niệm thư viện: Tập hợp những lớp, hàm có sẵn giúp giải quyết công việc thường gặp. Bộ công cụng hữu ích của lập trình viên. Một vài thư viện C++: Thư viện chuẩn (C++ Standard Library). Thư viện boost. Thư viện MFC (Microsoft Foundation Classes). Phương pháp lập trình hướng đối tượng. 12
- Thư viện C++ Thư viện chuẩn: Thư viện cơ bản nhất của C++. Các lớp và hàm nằm trong namespace std. File Header không .h. Phân nhóm: Nhóm nhập xuất: iostream, iomanip, fstream, … Nhóm STL. … Thư viện chuẩn C: file header cxxx. Phương pháp lập trình hướng đối tượng. 13
- Thư viện C++ Thư viện STL (Standard Template Library): Một phần của thư viện chuẩn. Các lớp và hàm hỗ trợ lập trình với template. Phân nhóm: Nhóm container: vector, list, deque, set, … Nhóm string: string, … Nhóm iterator. … Phương pháp lập trình hướng đối tượng. 14
- Thư viện C++ Lớp string: File header . Lớp đại diện cho các đối tượng chuỗi. Giải quyết 3 vấn đề con trỏ. Các phương thức chính: string(char *): khởi tạo từ một chuỗi ký tự. length(): lấy chiều dài chuỗi. Toán tử [ ]: lấy ký tự tại một vị trí nào đó. Toán tử >, =,
- Thư viện C++ Ví dụ lớp string: void main() { string s1(“software”); string s2(“SoftWare”); if (s1 == s2) cout
- Thư viện C++ Lớp vector: File header . Lớp mảng kiểu T. Giải quyết 3 vấn đề con trỏ. Các phương thức chính: vector(): khởi tạo mảng kiểu T. size(): lấy kích thước mảng. push_back(T): thêm phần tử vào cuối mảng. Toán tử [ ]: lấy phần tử tại một vị trí nào đó. Phương pháp lập trình hướng đối tượng. 17
- Thư viện C++ Ví dụ: void main() { vector v1; v1.push_back(1); v1.push_back(2); for (int i = 0; i < v1.size(); i++) cout
- Tóm tắt Template: Cách thức tham số hóa kiểu dữ liệu. Cho phép lập trình trên kiểu dữ liệu t ổng quát. Function template: Hàm tổng quát cho nhiều kiểu dữ liệu khác nhau. Kiểu cụ thể được quyết định khi gọi hàm. Class template: Lớp tổng quát cho nhiều kiểu dữ liệu khác nhau. Kiểu cụ thể được truyền vào khi tạo đối tượng từ lớp. Phần cài đặt nằm cùng file: Phần khai báo. Phần sử dụng. Phương pháp lập trình hướng đối tượng. 19
- Tóm tắt Thư viện C++: Bộ công cụ hỗ trợ lập trình. Thư viện chuẩn: Thư viện STL. Thư viện boost. Thư viện MFC. Phương pháp lập trình hướng đối tượng. 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Phương pháp lập trình: Chương 1 - GV. Từ Thị Xuân Hiền
18 p | 132 | 17
-
Bài giảng Phương pháp lập trình: Chương 2 - GV. Từ Thị Xuân Hiền
50 p | 107 | 15
-
Bài giảng Phương pháp lập trình: Chương 6 - GV. Từ Thị Xuân Hiền
39 p | 105 | 15
-
Bài giảng Phương pháp lập trình: Chương 3 - GV. Từ Thị Xuân Hiền
29 p | 117 | 12
-
Bài giảng Phương pháp lập trình: Chương 5 - GV. Từ Thị Xuân Hiền
37 p | 114 | 12
-
Bài giảng Phương pháp lập trình: Chương 4 - GV. Từ Thị Xuân Hiền
19 p | 104 | 11
-
Bài giảng Phương pháp lập trình: Chương 7 - GV. Từ Thị Xuân Hiền
18 p | 117 | 11
-
Bài giảng Phương pháp lập trình: Chương 9 - GV. Từ Thị Xuân Hiền
36 p | 101 | 10
-
Bài giảng Phương pháp lập trình: Chương 3
23 p | 115 | 10
-
Bài giảng Phương pháp lập trình: Chương 8 - GV. Từ Thị Xuân Hiền
25 p | 102 | 10
-
Bài giảng Phương pháp lập trình: Chương 6 (tiếp theo)
43 p | 85 | 9
-
Bài giảng Phương pháp lập trình: Chương 4
9 p | 96 | 6
-
Bài giảng Phương pháp lập trình hướng đối tượng: Bài tập 5 - Trần Phước Tuấn
4 p | 114 | 6
-
Bài giảng Phương pháp lập trình: Chương 7
16 p | 71 | 4
-
Bài giảng Phương pháp lập trình - Chương 1: Phương pháp lập trình (2016)
64 p | 73 | 4
-
Bài giảng Phương pháp lập trình: Bài 2 - TS. Ngô Hữu Dũng
45 p | 73 | 4
-
Bài giảng Phương pháp lập trình: Bài 4 - TS. Ngô Hữu Dũng
51 p | 91 | 4
-
Bài giảng Phương pháp lập trình: Bài 11 - TS. Ngô Hữu Dũng
42 p | 62 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn