Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 40 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
40
Dung lượng
132 KB
Nội dung
Lập trình hướng đối tượng – Templates 1 Chương 5 TEMPLATES Lập trình hướng đối tượng – Templates 2 Tài liệu đọc Lập trình hướng đối tượng – Templates 3 Templates • Function templates • Class templates • Inheriting Template Classes Lập trình hướng đối tượng – Templates 4 Templates • According to the dictionary, a template is a pattern or guide used to replicate an object e.g. a biscuit cutter. Lập trình hướng đối tượng – Templates 5 Function templates • A function template is a pattern for creating a family of similar functions. • If you need two or more functions with identical behaviour that differ only in their parameter types, you can write a function template that the compiler will use to generate the definitions of the actual functions. Lập trình hướng đối tượng – Templates 6 Function templates • A function template has the general form template <class T, > returnType functionName(parameterList) { // Body of the function } Lập trình hướng đối tượng – Templates 7 Function templates (I) • The keyword template indicates that what follows is a function template, not an actual function. • The notation <class T, > is the template parameter list. Lập trình hướng đối tượng – Templates 8 Function templates (II) • The keyword class indicates that T is a generic type i.e. a placeholder for a data type used by the function. • The identifier T appears throughout the function definition wherever this type needs to be written. Lập trình hướng đối tượng – Templates 9 Generated functions • When the function template is called, the compiler deduces the type of the actual argument and substitutes it for the generic type T, creating what is known as a generated function. • The act of generating a function is referred to as instantiating the template. Lập trình hướng đối tượng – Templates 10 template <class T> void swap ( T& first, T& second) { T temporary = first; first = second; second = temporary; } Example 1 [...]... i . Lập trình hướng đối tượng – Templates 1 Chương 5 TEMPLATES Lập trình hướng đối tượng – Templates 2 Tài liệu đọc Lập trình hướng đối tượng – Templates 3 Templates • Function. Classes Lập trình hướng đối tượng – Templates 4 Templates • According to the dictionary, a template is a pattern or guide used to replicate an object e.g. a biscuit cutter. Lập trình hướng đối. array[0]; for (int i = 0; i <= size - 2; i++) array[i] = array[i + 1]; array[size - 1] = temporary; } Lập trình hướng đối tượng – Templates 15 Making templates available to the compiler • Do