>>348
class foo
{
    int hoge::*mem;
public:
    foo(int hoge::*mp) : mem(mp) {}
    bool operator ()(const hoge& x, const hoge& y)
    {
        return x.*mem < y.*mem;
    }
};

sort(v.begin(), v.end(), foo(&hoge::y));