Шаблони дозволяють створювати сімейства функцій чи сімейства класів, що виконують ті самі операції з різними типами даних. Шаблон слід використовувати тоді, коли в парограмі присутні описи функцій чи класів, які відрізняються тільки типами даних. Використання шаблонів дає змогу зменшити розмір програмного коду, полегшити його читання і процес внесення змін.
Питання по темі
1. Шаблони дозволяють зручним способом створювати сімейства:
а) змінних
б) функцій
в) класів
г) програм
2. Шаблонний аргумент завжди починається з ключового слова
а) class
б) function
в) templateclass
3. Чи істинним є твердження: шаблони автоматично створюють різні версії класу залежно від даних, введених користувачем?
а) так
б) ні, вони створюються в процесі компіляції
4. Шаблонний клас:
а) створюється для того, щоб працювати з різними контейнерами
б) працює з різними типами даних
в) генерує ідентичні об’єкти
г) генерує класи з різним числом методів
5. Чи може шаблон мати кілька аргументів?
а) так
б) ні
6. Реальний код шаблонної функції генерується при:
а) оголошенні функції у вихідному коді
б) визначенні функції у вихідному коді
в) виклику функції у вихідному коді
г) запуску функції під час роботи програми
7. Шаблони часто використовуються з класами, які:
а) зберігають дані
б) здійснюють ввід-вивід даних
в) складаються з даних різного типу
Тема 15. Стандартна бібліотека шаблонів STL
Вступ
Вступ в STL
Контейнери
Послідовні контейнери
Асоціативні контейнери
Методи
Адаптери контейнерів
Алгоритми
Ітератори
Алгоритми
Алгоритм find()
Алгоритм count()
Алгоритм sort()
Алгоритм search()
Алгоритм merge()
Функціональні об’єкти
Функції користувача замість функціональних об’єктів
Додавання _if до аргументів
Алгоритм for_each()
Алгоритм transform()
Послідовні контейнери
Вектори
Списки
Черги з двостороннім доступом
Ітератори
Ітератори як інтелектуальні вказівники
Відповідність алгоритмів контейнерам
Робота з ітераторами
Спеціалізовані ітератори
Адаптери ітераторів
Потокові ітератори
Асоціативні контейнери
Множини і мультимножини
Відображення та мультивідображення
Асоціативний масив
Збереження об’єктів користувача
Список об’єктів класу person
Функціональні об’єкти
Напередвизначені функціональні об’єкти
Створення власних функціональних об’єктів
Підсумок
Питання по темі
Вступ
В інформатиці розрізняються терміни структура даних – тобто те як інформація зберігається в пам’яті комп’ютера, та алгоритм – як ця інформація обробляється.
Класи С++ являють собою чудовий механізм для створення бібліотеки структур даних. До стандарту С++ входить власна вбудована бібліотека класів-контейнерів. Вона називається Стандартною бібліотекою шаблонів (скорочено STL). STL є частиною Стандартної бібліотеки класів С++, її автори – Олександр Степанов і Менг Лі.