fork download
  1. #include <memory>
  2.  
  3.  
  4. template<typename T>
  5. class object
  6. {
  7. public:
  8. typedef T class_type;
  9. };
  10.  
  11. class example : public object<example> {};
  12. class upgraded_example : example, public object<upgraded_example> {};
  13.  
  14.  
  15. int main(void)
  16. {
  17. example::object<example>::class_type a;
  18. upgraded_example::object<upgraded_example>::class_type b;
  19. object<example>::class_type A;
  20. object<upgraded_example>::class_type B;
  21.  
  22. return 0;
  23. }
Success #stdin #stdout 0s 3336KB
stdin
Standard input is empty
stdout
Standard output is empty