Ngôn ngữ lập trình - Chapter 6 (HUST) Thầy Vũ Song Tùng
Chương 6 về lập trình tổng quát, tập trung vào khuôn mẫu hàm (function template), khuôn mẫu lớp và thuật toán tổng quát. Tài liệu giới thiệu cách sử dụng template để tổng quát hóa các hàm chỉ khác nhau về kiểu dữ liệu.
Generating preview...
.c ng co Lập trình om cu u du on g th an Chương 6: Lập trình tổng quát 2/10/2017 Nội dung cu u du on g th an co ng .c om 6.1 Khuân mẫu hàm (Function template) 6.2 Khuân mẫu lớp 6.3 Thuật toán tổng quát Chương 5: Lập trình tổng quát 2 6.1 Khuân mẫu hàm om Ví dụ hàm tìm giá trị lớn nhất .c a. Tìm max hai số nguyên int max(const int &a, const int &b){ b. Tìm max hai số thực th an co } ng return (a > b)? a: b; du on g float max(const float &a, const float &b){ return (a > b)? a: b; } Nhận xét: Các hàm tìm max của hai số chỉ khác nhau về kiểu dữ liệu, thuật toán giống nhau. Tương tự như vậy có rất nhiều hàm chỉ khác nhau về kiểu dữ liệu, không khác về thuật toán Giải pháp: tổng quát hóa các hàm chỉ khác nhau về kiểu khuôn mẫu hàm cu u Chương 5: Lập trình tổng quát 3 Ví dụ tổng quát hóa hàm max Tham số khuôn mẫu template <class T> .c return (a > b)? a: b; } co ng Khuôn mẫu hàm inline Sử dụng từ khóa class hoặc typename để khai báo tham số khuôn mẫu om T max(const T &a,const T &b){ Sử dụng du on g th an template <typename T> inline T max(const T &a,const T &b) { return (a > b)? a : b; } cu u int max(5,7); Compiler sẽ tạo một hàm theo khuôn mẫu có dạng int max(const int&, const int&) Chương 5: Lập trình tổng quát 4 Ví dụ sử dụng th an co ng .c om void main() { int i1 = 1, i2 = 5; double d1 = 1.0, d2 = 2.0; double d = max(d1,d2); // max<double>(double,double) char c = max('c','a'); // max<char>(char, char) d = max(i1,d1); // error: ambiguous c = max('c',i1); // error: ambiguous d = max<
… Download the original file to read the full document.
- Document name
- Ngôn ngữ lập trình - Chapter 6 (HUST) Thầy Vũ Song Tùng
- School / Course
- Đại học Bách khoa Hà Nội · Ngôn ngữ lập trình
- Author (in document)
- Vũ Song Tùng
- Content
- Tài liệu giới thiệu lập trình tổng quát với khuôn mẫu hàm và lớp, cho phép viết mã linh hoạt với nhiều kiểu dữ liệu. Nó cung cấp ví dụ về cách tạo, sử dụng và xử lý các trường hợp phức tạp của khuôn mẫu hàm.
- Table of contents
- 6.1 Khuân mẫu hàm (Function template)
- 6.2 Khuân mẫu lớp
- 6.3 Thuật toán tổng quát
- Pages
- 25 pages
- Uploaded by
- lienhejb
Frequently asked questions
Is this document free?
Yes. “Ngôn ngữ lập trình - Chapter 6 (HUST) Thầy Vũ Song Tùng” is free — just sign in and click Download to get the original file.
How many pages is this document?
The document has 25 pages, for the course Ngôn ngữ lập trình. You can preview it online before downloading.
Can I preview before downloading?
Yes. You can preview this document right on this page with the online reader, then decide whether to download.

Comments (0)
No comments yet. Be the first!