find_if私は次のエラーを取得する:: find_if機能:このSTDと何が間違っている:: STDをコンパイルするとき
error C2451: conditional expression of type 'overloaded-function' is illegal
コードは次のようになります。
typedef std::vector<boost::shared_ptr<node> >::iterator nodes_iterator;
nodes_iterator node_iter = std::find_if(_request->begin(), _request->end(), boost::bind(&RequestValues::is_parameter, this));
bool RequestValues::is_parameter(nodes_iterator iter)
{
return ((*iter)->name.compare("parameter") == 0);
}
持っているようですstd::find_if
に渡された述語関数と関係するものですが、何が間違っているのか分かりませんが、誰でも助けてくれますか?
node
は、いくつかの値を含むstruct
です。
私はまだこの関数のシグネチャで同じエラーが発生します.... :( –
@トニー:申し訳ありませんが、私はそのショットでターゲットを逃しました。 – sbi