Professional Documents
Culture Documents
(TEMPLATE)
NỘI DUNG
Là một khuôn mẫu hàm, cho phép định nghĩa các
hàm tổng quát thao tác cho nhiều kiểu dữ liệu.
Với mỗi giá trị hợp lệ của đối số sẽ phát sinh một
hàm cụ thể gọi là hàm thể hiện
Định nghĩa khuôn mẫu hàm
Sử dụng khuôn mẫu hàm giống như hàm thông thường với
kiểu cụ thể tại thời điểm chạy chương trình.
Dòng 3: Tiền tố khuôn
mẫu, báo cho trình biên
dịch biết đằng sau là
khuôn mẫu, với T là
tham số kiểu. Có thể
thay “typename” bằng
“class”
Giả sử cần khai báo hai kiểu dữ liệu
<bt1> > <bt2> ? <bt1> : <bt2>
max = x > y ? x: y;
if(x > y)
max = x;
else
max = y;
7.2. Khuôn mẫu lớp
Là một khuôn mẫu lớp, cho phép định nghĩa các lớp
tổng quát cho nhiều kiểu dữ liệu.
Với mỗi giá trị của tham số kiểu sẽ phát sinh ra một
thể hiện là một lớp cụ thể
Định nghĩa khuôn mẫu lớp
....
}
Khai báo đối tượng
Cú pháp:
<tên khuôn mẫu lớp><kiểu> <tên đối tượng>;
Ví dụ:
MT<int> a;
MT<float> b;
Sử dụng các phương thức của đối tượng không có gì
thay đổi.
Tức là vẫn theo cú pháp:
<tên đối tượng>.<tên phương thức>
Ta có thể khai báo một
template cùng với một
kiểu dữ liệu chỉ định
trước: