是否有一个内置函数对象返回p->first
and p->second
,这样我就可以愉快地写作了
transform(m.begin(),m.end(),back_inserter(keys),get_first);
transform(m.begin(),m.end(),back_inserter(vals),get_second);
基于STL的解决方案是最好的,boost
解决方案是第二好的。
是的,我知道boost::lambda
,我不想开始使用它。
有非标准扩展g++ and SGI called select1st
and select2nd
。所以 STL 中可能没有任何相关内容。
Boost的bind也可以做到这一点,给它一个指向正确成员函数的指针
boost::bind(&std::map<string,string>::value_type::second,_1)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)