C++
#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() ENDCompiler positiv: