C++ — это язык программирования общего назначения. Первоначально он был разработан как расширение C и имеет похожий синтаксис, но теперь это совершенно другой язык.
Тег templates используется в нескольких контекстах: универсальное программирование (особенно C++) и создание данных / документов с использованием механизмов шаблонов.
В C++ функция друга — это своего рода функция, которая является «другом» данного класса, и ему разрешен доступ к частным и защищенным данным в этом классе, что обычно невозможно, как если бы данные были общедоступными.
Мощной особенностью шаблонов C++ является «специализация шаблонов». Это позволяет предоставлять альтернативные реализации на основе определенных характеристик параметризованного типа, экземпляр которого создается. Специализация шаблонов преследует две цели: разрешить…