私のプログラムはペアのセットに基づいています。
typedef std::pair<int,int> innerPair;
typedef std::pair<innerPair,int> setElement;
std::set<setElement> Foo;
innerPair
要素は setElement を実際に定義するものですが、すべての要素にグループ ID を添付する必要があるため、後者の定義setElement
です。
プログラムの残りの部分ではinnerPair
、グループ ID に関係なく検索する必要があるため、基本的に関数が必要です。
std::set<setElement>::iterator find(innePair);
グループ ID に関係なく、innerPair を見つけます。現状では、使用可能なすべてのグループ ID を循環して複数回の find() 呼び出しを実行できますが、効率的とは言えません。
find( ... )
ある種のワイルドカード検索を実行するメンバー関数を定義する簡潔な方法はありますか?それとも独自の定義でオーバーロードする必要がありますか?