Advertisement
Guest User

Untitled

a guest
Dec 10th, 2016
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.81 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. template<typename T, typename S>
  4. struct Citizen
  5. {
  6. Citizen(T k, S l) : k_{k}, l_{l} {}
  7. T k_;
  8. S l_;
  9. };
  10.  
  11. template<typename T>
  12. using Adult = Citizen<T, int>;
  13.  
  14. template<typename T>
  15. using Teenager = Citizen<T, double>;
  16.  
  17. template<typename T>
  18. using Sheriff = Citizen<T, char>;
  19.  
  20. template<typename T>
  21. struct Citizen<T, char>
  22. {
  23. Citizen(T k, char l) : k_{k}, l_{l} {
  24. std::cout
  25. << "### O szeryf, szeryf, ty trzymaj sie\n"
  26. << "### Tak bardzo dobrze nie jest, ale nie jest zle\n";
  27. }
  28. T k_;
  29. char l_;
  30. };
  31.  
  32. int main()
  33. {
  34. Adult<std::string> a("adult", 10);
  35. Teenager<double> b(3.14, 2.72);
  36. Sheriff<double> c(3.14, 'a');
  37. std::cout << a.k_ << " " << a.l_ << "\n";
  38. std::cout << b.k_ << " " << b.l_ << "\n";
  39. std::cout << c.k_ << " " << c.l_ << "\n";
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement