fork download
  1. #include <iostream>
  2.  
  3. template <typename t>
  4. class Number
  5. {
  6. private:
  7. t n;
  8. public:
  9. Number(t a) :n{ a } {};
  10. Number() :n{ t() } {};
  11. friend std::ostream& operator<<(std::ostream & os, const Number& a)
  12. {
  13. os << a.n;
  14. return os;
  15. }
  16.  
  17. friend Number operator%(Number a, Number b)
  18. {
  19. return Number(a.n % b.n);
  20. }
  21. };
  22.  
  23. int main()
  24. {
  25. Number<int> a(10);
  26. Number<int> b(20);
  27. Number<int> c = a % b;
  28. std::cout << c << std::endl;
  29. }
  30.  
Success #stdin #stdout 0s 15224KB
stdin
Standard input is empty
stdout
10