#include <iostream>
#include <functional>
using namespace std;
struct sample {
int a;
std::function<int()> get_simple(int o) {
return [=,this]() {
return a + o;
};
}
};
int main() {
sample s;
auto f = s.get_simple(5);
s.a = 10;
cout << f() << endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8ZnVuY3Rpb25hbD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpzdHJ1Y3Qgc2FtcGxlIHsKICAgIGludCBhOwoJCglzdGQ6OmZ1bmN0aW9uPGludCgpPiBnZXRfc2ltcGxlKGludCBvKSB7CgkJcmV0dXJuIFs9LHRoaXNdKCkgewoJCQlyZXR1cm4gYSArIG87CgkJfTsKCX0KfTsKCmludCBtYWluKCkgewogICAgc2FtcGxlIHM7CiAgICBhdXRvIGYgPSBzLmdldF9zaW1wbGUoNSk7CiAgICBzLmEgPSAxMDsKICAgIGNvdXQgPDwgZigpIDw8IGVuZGw7Cn0K