#include <iostream>
#include <boost/function.hpp>
#include <boost/lambda/lambda.hpp>
int main()
{
namespace bst = boost;
namespace bll = bst::lambda;
int c = 0;
bst::function<void()> f = bll::var(c)++;
f();
std::cout << c << std::endl;
f();
std::cout << c << std::endl;
f();
std::cout << c << std::endl;
}