標準ライブラリ ソートによるユーザー定義型のソート
特定のメンバー変数によるユーザー定義型 (UDT) のベクトルのソートは次のとおりです。共通のタスク。標準ライブラリのソート関数は、特定の条件が満たされた場合にこの操作を実行できます。
標準ライブラリのソートは UDT ソートを処理できますか?
はい、標準ライブラリのソートは次の目的で利用できます。メンバー変数に基づいて UDT を配置します。これには 2 つの重要な要素が必要です:
演算子の例オーバーロード:
struct MyType { int a; int b; bool operator<(const MyType& other) const { // Custom comparison logic based on 'a' } };
カスタム順序付け関数を使用した例:
実装する代わりに、カスタム順序付け関数を引数として sort() に渡すこともできます。演算子 <:
bool compareMyType(const MyType& t1, const MyType& t2) { // Custom comparison logic based on 'a' }
どちらの場合でも、UDT ベクトルをソートできます。 using:
std::sort(moo.begin(), moo.end()); // for operator overload std::sort(moo.begin(), moo.end(), compareMyType); // for custom function
比較ロジック (a に基づく) は、希望する並べ替え順序 (例: 最低値から最高値、最高値から最低値) と一致している必要があることに注意してください。
以上が標準ライブラリの並べ替えはユーザー定義型の並べ替えを処理できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。