vector 查找/查找和对比结构体元素值

2023-11-18

原地转:http://www.cplusplus.com/reference/algorithm/find_if/
#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/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vector 查找/查找和对比结构体元素值 的相关文章

  • 如何利用 Numpy(或其他 Python 解决方案)中外积的对称性?

    假设我们要计算向量与其自身的外积 import numpy as np a np asarray 1 1 5 2 2 5 3 A np outer a a print A 结果是 1 1 5 2 2 5 3 1 5 2 25 3 3 75
  • 使用索引迭代向量的子集

    我可以遍历目录中的所有文件 但是 我想迭代某些文件而不是所有文件 我想使用索引 我想通过使用来做到这一点file id向量 每个向量元素将是 文件 中的索引 例如 我在一个目录中有 500 个文件 我只想迭代三个文件 即文件 2 4 15
  • 检查向量索引是否为空

    在我的代码中 我需要这样做 if edges j ConnectedToNode i problem line edges push back Edge i j nodes i Position nodes j Position dista
  • C++ 如何将 char 数组转换为字节向量 (vector)

    我有大量的字符 char myCharArray 0x9B 0x3E 0x34 0x87 0xFD 0x24 0xB4 0x64 0xBA 0x80 0x04 0xFD 0xDF 0x23 0x41 0xEE 0x00 0x00 0x00
  • 为什么 std::string 不是 std::vector 的特化? [复制]

    这个问题在这里已经有答案了 将字符串视为字符向量似乎是显而易见的 那么为什么 string 有它自己的特殊实现 它看起来与向量类有很大不同呢 只是为了说明这一点 这里有两个课程的一些片段 以表明所需的工作非常相似 例如两者都使用分配器来管理
  • 对向量元素进行向量化循环

    我发现很难对以下问题提出快速解决方案 我有一个观察向量 它表示观察某些现象的时间 example lt c 0 0 0 1 0 1 1 0 0 0 1 0 0 1 1 0 0 1 0 0 现在我想消除特定观察之间的零 假设某种现象会持续下去
  • 将函数应用于滚动窗口

    假设我有一个很长的清单A我想要计算的值 例如长度 1000 std100 对 即我想计算std A 1 100 std A 2 101 std A 3 102 std A 901 1000 在 Excel VBA 中 可以通过编写例如以下内
  • 使用shared_ptr的例子?

    你好 我今天问了一个关于如何在同一个向量数组中插入不同类型的对象 https stackoverflow com questions 3475030 different types of objects in the same vector
  • 交叉连接 2 个向量的元素以生成第三个向量

    我有 2 个向量 想要将一个向量分布到另一个向量上以形成第三个向量 例如 V1 a b c V2 d e f Result V3 ad ae af bd be bf cf nine total elements 我知道如何做到这一点的唯一方
  • 使用交换和弹出迭代时擦除向量中的元素

    我想在迭代向量时删除某些元素 但下面的代码会导致 向量迭代器不可递增 断言失败 for auto iter vec begin iter vec end iter if iter isDead std swap iter vec back
  • 我可以在 Javascript 中定义自定义运算符重载吗? [复制]

    这个问题在这里已经有答案了 是否可以在 JavaScript 中的类型实例之间定义自定义运算符 例如 假设我有一个自定义向量类 是否可以使用 vect1 vect2 检查是否相等 而底层代码会是这样的 operator a b return
  • 查找向量中最接近的值

    我想要完成的是迭代双精度值向量并返回最接近的可能双精度值的向量位置 我对此有两个问题 当尝试使用以下命令查找向量中最接近的双精度值时lower bound 如果我输入 1 我只会收到非零的值 我不知道如何使用lower bound返回向量位
  • STL:为向量编写“where”运算符

    我需要根据几个布尔谓词找到向量中的索引 ex vector
  • Octave/Matlab:向向量添加新元素

    有一个向量x我必须添加一个元素 newElem 有什么区别吗 x end 1 newElem and x x newElem x end 1 newElem更稳健一些 x x newElem 仅当x是行向量 如果它是列向量x x newEl
  • SVG/矢量图室内导航路由

    我一直在网上搜索有关如何为基于 SVG 的室内平面图实现我自己的点对点导航系统的教程或方法 我已经在网上搜索过 但唯一的选项适用于谷歌地图 不过 我使用 Illustrator 创建了地图 并使用路径 矢量作为 SVG 图像 我不需要为用户
  • Numpy 提取网格数据的子集

    在我的应用程序中 我有一个从 meshgrid 命令获得的值矩阵及其坐标 经度 纬度 我想根据经度和纬度限制提取该矩阵的特定子区域 我已经尝试过这个解决方案 但它不起作用 我需要三个矩阵作为输出 一个用于数据 另外两个用于网格 Lons L
  • 如何找到向量中第一个小于整数 X 的元素? (c++)

    如果我有以下向量 10 10 10 20 20 20 30 30 我想要一个函数返回 X 的整数的位置或直接返回 X 之后的较小元素 例如如果我正在搜索 11 我希望函数返回 2 因为第二个元素 10 是第一个较小的元素向量中大于 11 的
  • rbind 命名向量到不同长度的矩阵

    我正在尝试将命名向量绑定到矩阵上 命名向量的长度与矩阵不同 gt m lt matrix data c 1 2 3 nrow 1 ncol 3 dimnames list c c column 1 column 2 column 3 gt
  • XNA 2D 矢量角度 - 正确的计算方法是什么?

    在 2D 中的 XNA 中矢量角度的标准工作方式是什么 向右 0 度 向上 90 度 向左 180 度 向下 270 度 什么是 标准 实现 float VectortoAngle Vector2 vec and Vector2 Angle
  • 将 R 中的向量按特定顺序转换为下三角矩阵

    我有一个向量 其中元素的顺序很重要 比如说 x lt c 1 2 3 4 我想将我的向量排列成具有特定顺序的下三角矩阵 其中每行包含向量的前一个元素 我的目标是获得以下矩阵 lower diag matrix 1 2 3 4 1 4 0 0

随机推荐

  • openwrt下使用SDK编译ipk包遇到Package hiOpenwrt is missing dependencies for the following libraries: libc.so.

    openwrt下使用SDK编译ipk包遇到Package hiOpenwrt is missing dependencies for the following libraries libc so 6 问题 缺少 libc so 6 库 但
  • C++:stat函数

    函数原型 int stat const char pathname struct stat statbuf 函数作用 用于获取文件状态信息 使用函数需要包含头文件 include
  • Docker安装Nginx(配置SSL证书)

    1 下载Nginx镜像 拉取镜像 docker pull nginx 查询镜像 docker images 2 创建配置文件 创建挂载目录 mkdir p home nginx conf d mkdir p home nginx confi
  • 用 Pytest+Allure 生成漂亮的 HTML 图形化测试报告

    本篇文章将介绍如何使用开源的测试报告生成框架 Allure 生成规范 格式统一 美观的测试报告 通过这篇文章的介绍 你将能够 将 Allure 与 Pytest 测试框架相结合 如何定制化测试报告内容 执行测试之后 生成 Allure 格式
  • Springboot+Vue前后端分离项目打包并部署到服务器

    一 打包前端项目 打开前端项目 使用npm run build命令进行打包 打包成功后结果如下 这时 该项目目录下有一个build目录是打包好的文件 将该目录下的所有文件复制到后端Springboot项目的resources static目
  • java微服务架构内存,微服务架构下的子服务器内存波动

    springcloud架构下的服务器jvm内存波动是正常的 服务器内存波动 本人验证了eureka 和 nacos 两种注册中心 nacos 最低内存占用为 60M 最高内存占用为 450M 波动值为400M左右 eureka 最低内存占用
  • Layer Norm

    参考ConvNeXt中的Layer Normalization LN 海斌的文章 知乎 https zhuanlan zhihu com p 481901798 Layer Norm本来是一个样本norm自己 如图所示 也就是说 在 C H
  • tomcat应用服务器大量接口超时,内存及CPU飙升100%以上解决流程

    问题现象 最近我们相关站点的docker环境出现一个奇怪的现象 大量接口超时 普遍都是几千毫秒 问题解决 经过排查 已经确定不是被调用服务端的问题 于是开始排查我们自己的环境 发现docker容器的内存 从启动开始内存不断上升 然后找到我们
  • 【学习打卡】Pandas第六章:缺失数据

    Pandas学习 第六章 缺失数据 一 缺失观测及其类型 1 了解缺失信息 a isna和notna方法 判断缺失值 b 查看缺失值的所在行 c 挑出所有非缺失值列 2 三种缺失符号 二 缺失数据的运算与分组 1 加号与乘号规则 2 gro
  • 用Anaconda安装TensorFlow

    一说起现在比较火的机器学习 深度学习之类的 不得不说的一定有谷歌的TensorFlow框架 关于TensorFlow我就不多说了 因为我对这个东西也不太了解 这才是第一次开始学习 那么今天要说的是就是在Windows平台上安装TensorF
  • 利用MVC做一个 常见的管理系统

    登陆的部分 gt 数据库 gt 表 admin id name pass regtime 表与类的映射关系 基于面向对象 转换成对象的操作 gt 登陆页面
  • Java课题笔记~ JSP开发模型

    MVC 1 JSP演化历史 1 早期只有servlet 只能使用response输出标签数据 非常麻烦 2 后来有了jsp 简化了Servlet的开发 如果过度使用jsp 在jsp中即写大量的java代码 有写html表 造成难于维护 难于
  • 积分路径上有奇点的积分_复变函数与积分变换 简明笔记(七):留数定理

    拖更了两年 最近终于开始补齐之前这篇稿子的内容 之后可能会在暑假期间慢慢写好 保证质量比保证完成速度更重要 留数理论是复积分和复级数理论结合的产物 在前面详细讨论过洛朗级数和柯西积分定理之后 导出留数理论是很正常的事情 系统建立留数理论 实
  • yaffs2文件系统坏块发生记(读写代码及注释)

    yaffs2文件系统坏块产生记 对于yaffs2文件系统来说 坏块管理无疑是最关键的问题 下面就Yaffs2文件系统读 写操作来分析坏块产生记 写操作 写chunk操作 参数1 yaffs dev结构 全局 参数2 要写的2048字节数据
  • pyecharts的各个系列配置项设置示例——个人整理与分享

    由于在使用pyecharts时我们有很多对图表的配置项设置需要用到全局配置项和系列配置项 因此在对pyecharts的图表进行介绍之前先进行个人在pyecharts官网对系列配置项学习的整理 因为个人在官网对代码的查看没有特别舒服 其中包含
  • Nuxt3如何使用Tailwindcss?

    最近在Nuxt3项目中使用tailwindcss碰到一些问题 经研究后把问题解决 为避免此类问题特此把解决过程写下来做个记录 Nuxt3官网 tailwindcss官网 创建Nuxt3应用 须确保node js版本大于16 11 Nuxt3
  • 搜索技巧

    搜索技巧 一 完全匹配搜索 里面的就是完全搜索 例如 胡文迪 就会找完全匹配胡文迪三个字的相关结果 如果没有检索到 二 搜索范围限定在标题 intitle xx allintitle xx xx 在查询词前加上intitle xx 如果是多
  • 步进电机 - 构造与动作原理(二)

    第2章 构造与动作原理 2 1 构造 1 基本构造与动作原理 通过简易的示图讲解步进电动机的基本构造和动作原理 基本构造和动作原理 下图为步进电动机简易示图 对线圈L1进行通电时 L1会被磁化 中间部分的磁铁被LI吸引 并于平衡后停止 对线
  • 解决IntelliJ IDEA 项目结构旁边出现 0%classes,0% lines covered

    解决IntelliJ IDEA 项目结构旁边出现 0 classes 0 lines covered 官方文档解答 两种方法 解决IntelliJ IDEA 项目结构旁边出现 0 class 0 lines covered 官方文档解答 F
  • vector 查找/查找和对比结构体元素值

    原地转 http www cplusplus com reference algorithm find if include