• c++ list sort方法


       1:  #include <list>
       2:  #include <string>
       3:  #include <functional>
       4:  #include <iostream>
       5:   
       6:  struct S {
       7:           std::string firstname;
       8:           std::string secondname;
       9:           int ID;
      10:           // 重新定义小于,因为默认的sort函数调用的操作符是<,所以我们只需要重载 < 就好了    
      11:          bool operator < (S & b) { 
      12:              return ID < b.ID;
      13:           }
      14:   
      15:  };
      16:  int main(int argc, char* argv[])
      17:  { 
      18:             std::list<S> mylist; 
      19:             std::list<S>::iterator iter; 
      20:             S a; 
      21:             a.firstname ="dfadf"; 
      22:             a.ID = 5; 
      23:             mylist.push_back (a);    
      24:            a.firstname ="得到"; 
      25:             a.ID = 9; 
      26:             mylist.push_back (a);   
      27:             a.firstname ="xxx"; 
      28:             a.ID = 7;  
      29:            mylist.push_back (a);  
      30:            a.firstname ="gggg"; 
      31:            a.ID = 25; 
      32:             mylist.push_back (a); 
      33:              mylist.sort();
      34:            // 现在默认的operator已经被我们重载了,就不用管,直接调用sort就好了 
      35:             for (iter = mylist.begin(); iter != mylist.end();++iter)  
      36:             {     
      37:                       std::cout <<static_cast<S>(*iter).ID << "\t"; 
      38:              } 
      39:             std::cout <<std::endl;      
      40:             return 0;
      41:   }
  • 相关阅读:
    在tmux中如何复制文本并粘贴到某处?
    linux下的用户密码文件/etc/shadow
    linux下openssl命令解析
    第 27 章 CSS 传统布局[下]
    第 27 章 CSS 传统布局[上]
    第 26 章 CSS3 动画效果
    第 25 章 CSS3 过渡效果
    第 24 章 CSS3 变形效果[下]
    第 23 章 CSS3 边框图片效果
    第 22 章 CSS3 渐变效果
  • 原文地址:https://www.cnblogs.com/dorothychai/p/2549373.html
Copyright © 2020-2023  润新知