この構造のノードを含むリストがあります。
private:
char namefield[30];
char tam[3];
char type[1];
};
アルゴリズムクラスのfind関数で要素を見つけたいのですが、アイテムのnamefieldプロパティでやりたいのですが、find
関数にはパラメーターとして検索するアイテムがありますが、問題はのプロパティを送信したいということですノード自体の代わりにノード..
find_if
関数http://www.cplusplus.com/reference/algorithm/find_if/を使用できます。両方の構造体の名前フィールドが true の場合に true を返す、構造体の述語 (比較関数) を定義します。またはそのようなもの
class Cmp : public std::unary_function<mystruct, bool> {
std::string m_str;
public:
Cmp(const std::string &str) : m_str(str) {}
bool operator()(const mystruct &val) const {
return m_str.compare(val.namefield) ==0;
}
};
std::find_if(cont.begin(), cont.end(), Cmp("foo"));
構造体のコンテナはどこcont
ですか