fork download
  1. #include <iostream>
  2. struct Policy1
  3. {
  4. template<typename T>
  5. static void Print(const T &msg)
  6. {
  7. std::cout << "1: " << msg << std::endl;
  8. }
  9. };
  10. struct Policy2
  11. {
  12. template<typename T>
  13. static void Print(const T &msg)
  14. {
  15. std::cout << "2: " << msg << std::endl;
  16. }
  17. };
  18. template<typename Tpolicy = Policy1>
  19. class Client
  20. {
  21. public:
  22. static void Test()
  23. {
  24. Tpolicy::template Print<short>(1);
  25. }
  26. };
  27. int main()
  28. {
  29. Client<>::Test();
  30. }
  31.  
Success #stdin #stdout 0s 2884KB
stdin
Standard input is empty
stdout
1: 1