Advertisement
RobertDeMilo

RB1.5 Введение в шаблоны классов

Apr 15th, 2024
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.15 KB | None | 0 0
  1. В С++ есть не только шаблоны функций, но и шаблоны классов
  2. Чтобы создать класс из шаблона, надо после имени шаблона указать тип в угловых скобках
  3.  
  4. #include <iostream>
  5. #include <vector>
  6.  
  7. using namespace std;
  8.  
  9. struct PairOfStringAndInt
  10. {
  11.     string first;
  12.     int second;
  13. };
  14.  
  15. struct PairOfBoolAndChar
  16. {
  17.     bool first;
  18.     char second;
  19. };
  20.  
  21. template<typename T, typename U>  // шаблон класса
  22. struct Pair
  23. {
  24.     T first;
  25.     U second;
  26. };
  27.  
  28. int main()
  29. {
  30.     /*PairOfStringAndInt si;
  31.  
  32.     si.first = "Hello";
  33.     si.second = 5;
  34.  
  35.     PairOfStringAndInt bc;
  36.  
  37.     bc.first = true;
  38.     bc.second = 'z';*/
  39.  
  40.     // Создание типа из шаблона класса называется инстанцирование
  41.     // Из шаблона класса Pair создаем два класса (типа)
  42.     Pair<string,int> /*класс*/ si;
  43.  
  44.     si.first = "Hello";
  45.     si.second = 5;
  46.  
  47.     Pair<bool,char> bc;
  48.  
  49.     bc.first = true;
  50.     bc.second = 'z';
  51.  
  52.     return 0;
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement