boost.lambda et comparaison case insensitive
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
typedef std::vector< std::string > Vec;
Vec v;
// ...
using namespace boost::lambda;
Vec::iterator ite = std::find_if( v.begin(), v.end(),
bind( boost::iequals, "B", _1 ) );
// ou alors
Vec::iterator ite = std::find_if( v.begin(), v.end(),
bind( boost::is_iequal(), "B", _1 ) ); |
...ne compilent pas.
Si je fais moi même une fonction ou un functor, ça marche. C'est peut être à cause des templates utilisés dans iequals et is_iequal?
si vous savez pourquoi ça ne peut pas marcher comme ça, ça m'interesse.