#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <functional>
#include <utility>

class Foo {
    public:
    int i;
    void test() {
        std::cout << i << std::endl;
    }
};


int main()
{
    Foo f;
    f.i = 100;
    auto func = std::bind(&Foo::test, std::ref(f));
    f.i = 1000;
    func();

}