zoukankan      html  css  js  c++  java
  • vector常见用法

     1 #include <boost/foreach.hpp>
     2 #include <iostream>
     3 #include <vector>
     4 #include <boost/foreach.hpp>
     5 using namespace std;
     6 using namespace boost;
     7 class Test
     8 {
     9 public:
    10     Test(int a){
    11         age=a;
    12     }
    13     int age;
    14     bool   operator < ( const   Test&   rhs )  const {   //升序排序时必须写的函数
    15         return   age   <   rhs.age;
    16     }
    17     bool   operator > ( const   Test&   rhs )  const {   //降序排序时必须写的函数
    18         return   age   >   rhs.age;
    19     }
    20 };
    21 int main(void)
    22 {
    23     vector<Test> data;
    24     Test t1(1);
    25     Test t2(2);
    26     Test t3(3);
    27     Test t4(4);
    28     data.push_back(t1);
    29     data.push_back(t2);
    30     data.push_back(t3);
    31     data.push_back(t4);
    32     //1. 遍历
    33     for (vector<Test>::iterator it=data.begin(); it!=data.end(); it++) {
    34         cout<<it->age<< std::endl;
    35     }
    36     //2. 排序
    37     std::sort ( data.begin(), data.end(),greater<Test>() ); //lesss 升序
    38     //3. boost遍历
    39     BOOST_FOREACH(const Test& t,data)
    40     {
    41         cout<<t.age<< std::endl;
    42     }
    43     //4. 删除多个元素
    44     for ( vector<Test>::iterator it = data.begin(); it != data.end(); ) {
    45         if ( it->age == 1   || it->age == 3 ) {
    46             it = data.erase ( it );
    47         } else {
    48             it++;
    49         }
    50     }
    51     std::sort ( data.begin(), data.end(),less<Test>() ); //lesss 升序
    52     BOOST_FOREACH(const Test& t,data)
    53     {
    54         cout<<t.age<< std::endl;
    55     }
    57     return 0;
    58 }
  • 相关阅读:
    php 观察者模式
    php 策略模式
    php 适配器模式
    php 单例模式
    程序员应该关注的行业网站
    Mysql 5.7 索引使用规则和设计优化
    Docker官方镜像源或阿里云镜像源加速解决pull过慢的问题
    MySQL 优化案例
    mysql优化count(*)查询语句
    Mysql超大分页优化处理
  • 原文地址:https://www.cnblogs.com/langlang/p/3417106.html
Copyright © 2011-2022 走看看