Generator in C++

Tags:

http://www.crystalclearsoftware.com/soc/coroutine/index.html#coroutine.intro
http://www.sgi.com/tech/stl/generate.html

이렇게 할 수 있다는 건 미처 생각 못해봤네요…

#include

using namespace std;

class Generator {
private:
int min;
int max;
int val;

public:
Generator(int minInit, int maxInit):min(minInit), max(maxInit) {
val = minInit;
}

int operator()() {
return val++;
}

operator bool() const {
return val < max; } }; int main() { Generator g(10, 20); while (g) { cout << g() << endl; } return EXIT_SUCCESS; } [/code] Google Summer of Code에서 만들어졌지만 boost 안으로 들어오지는 못한 라이브러리인듯. Iterator로 만드는건 다음에 옮겨오도록 하죠. 원본의 iterator 예제가 마음에 안들어서...