fork download
  1. #include <iostream>
  2.  
  3. template<class T1,class T2>
  4. struct A
  5. {
  6. class iterator;
  7. };
  8.  
  9. template<typename T1, typename T2>
  10. struct A<T1, T2>::iterator {
  11. public:
  12. iterator& operator++();
  13. iterator operator++(int);
  14.  
  15. };
  16.  
  17. // Prefix Increment (++i) operator overload
  18. template<typename T1, typename T2>
  19. typename A<T1, T2>::iterator&
  20. A<T1, T2>::iterator::operator++() {
  21. return *this;
  22. }
  23.  
  24. int main()
  25. {
  26. A<int,int> a;
  27. A<int,int>::iterator x;
  28. ++x;
  29. }
  30.  
Success #stdin #stdout 0s 3336KB
stdin
Standard input is empty
stdout
Standard output is empty