boost lambda语法如何访问自定义类型参数的成员?
boost lambda的demo里都是这样的使用原生类型的代码
vector<int> vec;for_each(vec.begin(), vec.end(), _1 = _1 * 2);
struct user_info{ uint64_t account_id; uint64_t coin; uint64_t exp;};void test(){ vector<user_info> vec; // 即访问自定义类型 sort(vec.begin(), vec.end(), [](const user_info& lhs, const user_info& rhs){return lhs.exp < rhs.exp;});}sort(vec.begin(), vec.end(), bind(&user_info::exp, var(_1)) < bind(&user_info::exp, var(_2)));或者:sort(vec.begin(), vec.end(), (&_1) ->* &user_info::exp < (&_2) ->* &user_info::exp);