• <bdo id='fyvva'></bdo><ul id='fyvva'></ul>
    <i id='fyvva'><tr id='fyvva'><dt id='fyvva'><q id='fyvva'><span id='fyvva'><b id='fyvva'><form id='fyvva'><ins id='fyvva'></ins><ul id='fyvva'></ul><sub id='fyvva'></sub></form><legend id='fyvva'></legend><bdo id='fyvva'><pre id='fyvva'><center id='fyvva'></center></pre></bdo></b><th id='fyvva'></th></span></q></dt></tr></i><div id='fyvva'><tfoot id='fyvva'></tfoot><dl id='fyvva'><fieldset id='fyvva'></fieldset></dl></div>

    <legend id='fyvva'><style id='fyvva'><dir id='fyvva'><q id='fyvva'></q></dir></style></legend>

    <small id='fyvva'></small><noframes id='fyvva'>

    1. <tfoot id='fyvva'></tfoot>

      1. 根据两个值对 STL 向量进行排序

        时间:2023-10-07
          <legend id='IDuMy'><style id='IDuMy'><dir id='IDuMy'><q id='IDuMy'></q></dir></style></legend>

          • <bdo id='IDuMy'></bdo><ul id='IDuMy'></ul>
          • <tfoot id='IDuMy'></tfoot>

              <small id='IDuMy'></small><noframes id='IDuMy'>

                  <i id='IDuMy'><tr id='IDuMy'><dt id='IDuMy'><q id='IDuMy'><span id='IDuMy'><b id='IDuMy'><form id='IDuMy'><ins id='IDuMy'></ins><ul id='IDuMy'></ul><sub id='IDuMy'></sub></form><legend id='IDuMy'></legend><bdo id='IDuMy'><pre id='IDuMy'><center id='IDuMy'></center></pre></bdo></b><th id='IDuMy'></th></span></q></dt></tr></i><div id='IDuMy'><tfoot id='IDuMy'></tfoot><dl id='IDuMy'><fieldset id='IDuMy'></fieldset></dl></div>
                    <tbody id='IDuMy'></tbody>

                  本文介绍了根据两个值对 STL 向量进行排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  如何根据两种不同的比较标准对 STL 向量进行排序?默认的 sort() 函数只接受一个排序器对象.

                  How do I sort an STL vector based on two different comparison criterias? The default sort() function only takes a single sorter object.

                  推荐答案

                  您需要将两个条件合二为一.这是一个如何对具有第一个和第二个字段的结构进行排序的示例基于第一个字段,然后是第二个字段.

                  You need to combine the two criteria into one. Heres an example of how you'd sort a struct with a first and second field based on the first field, then the second field.

                  #include <algorithm>
                  
                  struct MyEntry {
                    int first;
                    int second;
                  };
                  
                  bool compare_entry( const MyEntry & e1, const MyEntry & e2) {
                    if( e1.first != e2.first)
                      return (e1.first < e2.first);
                    return (e1.second < e2.second);
                  }
                  
                  int main() {
                    std::vector<MyEntry> vec = get_some_entries();
                    std::sort( vec.begin(), vec.end(), compare_entry );
                  }
                  

                  注意:compare_entry 的实现已更新为使用来自 Nawaz 的代码.

                  NOTE: implementation of compare_entry updated to use code from Nawaz.

                  这篇关于根据两个值对 STL 向量进行排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:C++ std::vector 的独立 std::threads 下一篇:C++ 向量,返回与参数

                  相关文章

                  最新文章

                    <small id='qZWme'></small><noframes id='qZWme'>

                  1. <i id='qZWme'><tr id='qZWme'><dt id='qZWme'><q id='qZWme'><span id='qZWme'><b id='qZWme'><form id='qZWme'><ins id='qZWme'></ins><ul id='qZWme'></ul><sub id='qZWme'></sub></form><legend id='qZWme'></legend><bdo id='qZWme'><pre id='qZWme'><center id='qZWme'></center></pre></bdo></b><th id='qZWme'></th></span></q></dt></tr></i><div id='qZWme'><tfoot id='qZWme'></tfoot><dl id='qZWme'><fieldset id='qZWme'></fieldset></dl></div>
                        <bdo id='qZWme'></bdo><ul id='qZWme'></ul>

                      <legend id='qZWme'><style id='qZWme'><dir id='qZWme'><q id='qZWme'></q></dir></style></legend>
                      <tfoot id='qZWme'></tfoot>