TAILIEUCHUNG - Bài giảng Ngôn ngữ lập trình: Bài 7 - Lý Anh Tuấn

Bài giảng Ngôn ngữ lập trình: Bài 7 cung cấp cho người học các kiến thức: Khuôn mẫu hàm, cú pháp, định nghĩa, sự biên dịch, khuôn mẫu lớp, cú pháp, khuôn mẫu và kế thừa,. | NGÔN NGỮ LẬP TRÌNH Bài 7: Khuôn mẫu Giảng viên: Lý Anh Tuấn Email: tuanla@ Nội dung 1. Khuôn mẫu hàm ◦ Cú pháp, định nghĩa ◦ Sự biên dịch 2. Khuôn mẫu lớp ◦ Cú pháp ◦ Ví dụ: lớp khuôn mẫu mảng 3. Khuôn mẫu và kế thừa ◦ Ví dụ: lớp khuôn mẫu mảng nhập giá trị một phần 2 Giới thiệu Khuôn mẫu C++ ◦ Cho phép các định nghĩa tổng quát cho hàm và lớp ◦ Tên kiểu làm tham số thay vì kiểu thực sự ◦ Định nghĩa chính xác được quyết định ở thời điểm chạy Nhắc lại hàm swapValues: void swapValues(int& var1, int& var2) { int temp; temp = var1; var1 = var2; var2 = temp; } ◦ Chỉ áp dụng cho các biến kiểu int ◦ Nhưng phần mã lệnh làm việc với bất kỳ kiểu nào 3 Khuôn mẫu hàm vs. Nạp chồng Có thể nạp chồng hàm cho kiểu char: void swapValues(char& var1, char& var2) { char temp; temp = var1; var1 = var2; var2 = temp; } Lưu ý: Mã lệnh gần giống nhau ◦ Chỉ khác nhau về kiểu được sử dụng ở 3 vị trí 4 Cú pháp khuôn mẫu hàm Cho phép “hoán đổi giá trị” cho bất kỳ kiểu biến nào: template void swapValues(T& var1, T& var2) { T temp; temp = var1; var1 = var2; var2 = temp; } Dòng đầu tiên là tiền tố khuôn mẫu: ◦ Báo cho bộ biên dịch biết đằng sau là khuôn mẫu ◦ Và T là một tham số .

TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.