Generate a sequence.
#include <iostream> #include <vector> #include <algorithm> using namespace std; double pow_of_two(); int main() { vector<double> v(5); generate(v.begin(), v.end(), pow_of_two); for(unsigned i=0; i < v.size(); ++i) cout << v[i] << endl; return 0; } // A generator function that generates the powers of 2. double pow_of_two() { static double val = 1.0; double t; t = val; val += val; return t; }