Шаблоны C++


#include <iostream>     // std::cout, std::endl
template <class T>      // Объявляем тип T шаблонного класса
void swap(T a, T b){    // Функция перестановки значений
    T c = a;
    a = b;
    b = c;
    std::cout << "a = " << a << ", b = " << b << std::endl;
}

int main(){
    char ca = 'a', cb = 'b';
    swap(ca, cb);                       // a = b, b = a
    int ia = 1, ib = 3;
    swap(ia, ib);                       // a = 3, b = 1
    float fa = 10.23, fb = 20.5;
    swap(fa, fb);                       // a = 20.5, b = 10.23
    double da = 3.14159, db = 1.553;
    swap(da, db);                       // a = 1.553, b = 3.14159
    return 0;
}

Передача и возврат из функции разных типов с помощью auto (c++14)


template <class T1, class T2>
auto ADD(T1 a, T2 b){
    return a + b;
}
2023-10-23



Понравилась страница?
Добавить в закладки
Или поделиться!

Связанные темы

Ассемблерный листинг С++
Бенчмарки в С++
Рисование в консоли windows на С++
Функции в С++
Параметры функции в С++
Глоссарий С++. Идентификаторы, квалификаторы, модификаторы, объявление, определение и т.д..
Исключения в С++. Выбрасывание и ловля исключения.
Достоинства и недостатки C++
Сборка приложения без IDE C++ с помощью MinGW и Qt
Перегрузка функций и операторов в С++
Случайные числа в С++. Полиномиальная генерация случайных чисел.
Ссылки в С++
Рекурсия в С++. Примеры рекурсивных программ и без использования.
Шаблоны C++
Наименование переменных и стиль программирования
Версия компилятора С++
Время выполнения программы C++