Left Up Right C++

Initialisierung im Kopf einer For-Schleife

#include<iostream>
using namespace std;

class Iterator
{
public:
  Iterator() 
  {
    cerr << "Iterator()" << endl;
  }
  ~Iterator()
  {
    cerr << "~Iterator()" << endl;
  }
  bool done() { return true; }
  Iterator &operator++(int) { return *this; }
};

int main()
{
   for(Iterator i;!i.done();i++)
   {
   }
   cerr << "END" << endl;
}
liefert erwartungsgemäß
Iterator()
~Iterator()
END
Compiler positiv: Compiler negativ:
Informatik- und Netzwerkverein Ravensburg e.V Rudolf Weber