#include "function_input_iterator.hpp" #include #include #include using namespace std; struct Test { typedef double result_type; double operator ()() { return cnt++; } Test() : cnt (0) {} int cnt; }; int main () { using namespace boost; Test test; copy (make_function_input_iterator (test), make_function_input_iterator (test,5), ostream_iterator (cout, " ")); copy (make_function_input_iterator (test), make_function_input_iterator (test,5), ostream_iterator (cout, " ")); copy (make_function_input_iterator (test), make_function_input_iterator (test, 5), ostream_iterator (cout, " ")); copy (make_function_input_iterator (test), make_function_input_iterator (test, 5), ostream_iterator (cout, " ")); }