zoukankan      html  css  js  c++  java
  • vector 查找/查找和对比结构体元素值

    #include <iostream>
    #include <vector>
    #include <algorithm>
    #include <string>
    using namespace std;
    
    typedef struct
    {
        string str1;
        string str2;
        string str3;
    }TASK_INFO_STRU;
    
    bool findx(TASK_INFO_STRU &task)
    {
        return task.str2 == "task_two";
    }
    
    int main()
    {
        vector<TASK_INFO_STRU> task_vector;
        vector<TASK_INFO_STRU>::iterator iter;
    
        TASK_INFO_STRU task;
    
        task.str1 = "1";
        task.str2 = "task_one";
        task.str3 = "fine";
        task_vector.push_back(task);
    
        task.str1 = "2";
        task.str2 = "task_two";
        task.str3 = "fine";
        task_vector.push_back(task);
    
        iter = find_if(task_vector.begin(), task_vector.end(), findx);
        if (iter != task_vector.end())
        {
            cout << iter->str2 << endl;
            task_vector.erase(iter);
        }
    
        iter = find_if(task_vector.begin(), task_vector.end(), findx);
        if (iter != task_vector.end())
        {
            cout << iter->str2 << endl;
        }
    
        return 0;
    }
    

      









    #include <iostream> // std::cout #include <algorithm> // std::find #include <vector> // std::vector bool IsOdd (int i) { return ((i%2)==1); } int main() { int p[] = {0, 1, 2, 3, 4, 5}; std::vector<int> myvector( p, p + 6 ); std::vector<int>::iterator it; /** @brief find() example */ // iterator to vector element: it = find( myvector.begin(), myvector.end(), 3 ); if( it != myvector.end() ) // finded { std::cout << "The element 3 is found." << '\n'; // now *it is 3. it is a iterator to int. ++it; std::cout << "The element following 3 is " << *it << '\n'; } /** @brief find_if() example */ // iterator to vector element matching some condition. it = std::find_if (myvector.begin(), myvector.end(), IsOdd); if( it != myvector.end() ) // finded { std::cout << "The first odd value is " << *it << '\n'; } return 0; } find(first, last, val) 查找值为val的元素,返回迭代器 http://www.cplusplus.com/reference/algorithm/find/ find_if(first,last, pred) 查找符合某个条件的元素,返回迭代器 http://www.cplusplus.com/reference/algorithm/find_if/

      

    java新手自学群 626070845
    java/springboot/hadoop/JVM 群 4915800
    Hadoop/mongodb(搭建/开发/运维)Q群481975850
    GOLang Q1群:6848027
    GOLang Q2群:450509103
    GOLang Q3群:436173132
    GOLang Q4群:141984758
    GOLang Q5群:215535604
    C/C++/QT群 1414577
    单片机嵌入式/电子电路入门群群 306312845
    MUD/LIB/交流群 391486684
    Electron/koa/Nodejs/express 214737701
    大前端群vue/js/ts 165150391
    操作系统研发群:15375777
    汇编/辅助/破解新手群:755783453
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    disable_irq与disable_irq_nosync使用场景
    linux中断处理原理分析
    工作队列(workqueue) create_workqueue/schedule_work/queue_work
    使用git建立远程仓库,让别人git clone下来
    C中字符串的几种定义方法及说明
    Linux 2.6内核Makefile浅析
    探究platform_driver中的shutdown用途
    匆匆
    至强CPU性能排行,从X3210起,由低至高排列。
    Linux 命令行快捷键
  • 原文地址:https://www.cnblogs.com/cfas/p/3137549.html
Copyright © 2011-2022 走看看