Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Объяснить линейный поиск в массиве и сортировка массива http://www.cyberforum.ru/cpp-beginners/thread1244252.html
Рябята кому не трудно кто может обяснить линейный поиск в масиве и сортировку масива Не очень понял как на парах обясняли обясните вы пожалуйста буду благодарен!
Вычислите значения полиномов Лагерра Ln(x): C++
Ln(x)=\begin{cases}1 & \text{ if } n=0 \\ -x + 1 & \text{ if } n=1 \\ x^2-4x+2 & \text{ if } n=2 \\ -x^3+9x^2-18x+6 & \text{ if } n=3 \\ x^4-16x^3+72x^2-96x+24 & \text{ if } n=4 \end{cases} x...
Cохранение очень большого массива в текстовый файл C++
Помогите пожалуйста. Мне требуется сохранить карту в своей игре в текстовый файл. Класс карты: class cMap { public: cRegion regions; }; class cRegion { public:
C++ Написать функцию, которая сортирует переданный ей динамический массив "быстрой" сортировкой #include <iostream> #include <vector> using namespace std; void qSort( vector <int> &A,int nStart, int nEnd) { int L,R,c,X; if (nStart>=nEnd) return; L=nStart; R=nEnd; ... http://www.cyberforum.ru/cpp-beginners/thread1244219.html
C++ Как вывести фигуру в окне? http://www.cyberforum.ru/cpp-beginners/thread1244215.html
Всем доброго дня. Я знаком с C++ довольно поверхностно, но на уровне консольного приложения знаю, возможно, все. Начал изучать DirectX по книгам Горнакова С.Г., для пущего реализма поставил VC++6.0...
Класс "Множество" и операции над ним C++
Не хватает опыта понять ошибку Здравствуйте! Никак не получается тот же результат хотя проверял несколько раз вот само задание: #include <iostream> using namespace std; const int MaxSize = 100;...
Определить, какие вершины достижимы из заданной вершины S C++
Подскажите алгоритм для этой задачи, пожалуйста. Достижимые вершины Имя входного файла: graph.in Имя выходного файла: graph.out Ограничение по времени: 2 секунды Ограничение по памяти: 64...
C++ Как правильно очищать вектор указателей Привет Всем! Есть вопрос по вектору указателей, как правильно очищать память при таком случае очищение происходит существенно медленнее чем инициализация, но память очищается: #include <vector> ... http://www.cyberforum.ru/cpp-beginners/thread1244154.html
C++ Защита 2д онлайн игры от взломов http://www.cyberforum.ru/cpp-beginners/thread1244135.html
Здравствуйте, вообщем, я пытаюсь написать 2д рпг онлайн игру, которую в будущем хотелось бы переделать под андроид и выпустить в маркет, но речь не об этом. На данный момент игра реализована как...
C++ Подключение библиотеки Glaux.lib и ошибка компиляции Здравствуйте, У меня возникла проблема - надо подключить библиотеку GLAux (OpenGL-ая). Скачал от нее .h и .lib, подключил .h через #include, в свойствах проекта добавил Glaux.lib в дополнительные... http://www.cyberforum.ru/cpp-beginners/thread1244127.html
John Prick
841 / 772 / 258
Регистрация: 27.07.2012
Сообщений: 2,180
Завершенные тесты: 3
19.08.2014, 11:17 0

Что такое шаблоны функций?

19.08.2014, 11:17. Просмотров 651. Ответов 15
Метки (Все метки)

Ответ

Цитата Сообщение от krv Посмотреть сообщение
Кто покажет или расскажет на словах ситуацию, где шаблон лучшее, а лучше - единственное решение.
Единственное решение - вообще весьма редкий случай. Ну а насчёт лучших решений - STL, например. Standart Template Library, название говорит само за себя. Например, копирование оттуда:
C++
1
2
3
4
5
6
7
template <class II, class OI>
OI copy(II first, II last, OI out)
{
    for (; first < last; ++first, ++out)
        *out = *first;
    return out;
}
Эта функция подойдёт для любых типов, поддерживающих операции <, ++ и *. Самый простой - указатель, более сложный - различные классы итераторов. Если бы не было шаблонов, пришлось бы дублировать эту функцию для каждого типа, для которого осуществлялось бы копирование. Т.е. для int[], double[], char*, string::iterator и т.д. разные функции, которые отличались бы, по сути, только названиями типов в заголовке.

Вернуться к обсуждению:
Что такое шаблоны функций?
2
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2014, 11:17
Готовые ответы и решения:

Что такое шаблоны в C++?
Что такое шаблоны и для чего они нужны? Если не трудно приведите показательный пример применения...

В этой части кода происходит объявление функций? Что такое void? Что в скобках?
В этой части кода происходит объявление функций? Что такое void? Что в скобках? void get(float...

Что такое переопределение функций
По заданию нужно в программе применить перепределение функций. Поюзал- везде ссылаются на...

Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами?
Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами?

Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа?
Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа?

15
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.