在向量对中,找到第一个值等于X的对并返回第二个值,或者返回Y

波斯菊1

我有一个向量对,例如

std::vector< std::pair <int, double> > vec = { {1, 2.0}, {5, 21.0} };

我想检查此向量是否有一对第一个元素等于5的对,如果是这种情况,那么我想返回该对的第二个元素21.0。如果不是,则返回99.9。

我知道我可以std:find和家人一起使用,但不确定如何做价值回报部分。例如,以下搜索stackoverflow似乎是一个近似的解决方案:

#include <vector>
#include <algorithm>

double MyFunc(int key) const {
    if (std::find(vec.begin(), vec.end(), [&key](std::pair<int, double> const& elem) {
                                           return elem.first == key;
                                           }))
           return ???;
    else
           return 99.9;
}

这是可能的解决方案吗?我应该填写???;什么?如您所见,我不是C ++等类似程序的资深程序员,因此不胜感激。

伊戈尔·坦德尼克(Igor Tandetnik)
auto it = std::find_if(vec.begin(), vec.end(),
    [&key](const std::pair<int, double>& elem) {
        return elem.first == key;
    });
return it != vec.end() ? it->second : 99.9;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL比较第一个或第二个值对

来自分类Dev

SQL根据第二个表中的值列表从第一个表中选择

来自分类Dev

为什么我的第一个查询的值作为第二个查询的值返回?

来自分类Dev

MODx第二个runProcessor返回第一个的响应

来自分类Dev

根据第一个数组中的值在第二个数组中添加值

来自分类Dev

在第二个查询的值中使用第一个查询的值

来自分类Dev

如果第一个的返回值为true,则显示第二个复选框

来自分类Dev

使用colnames返回数据框行中第一个出现的第二个最大值并应用

来自分类Dev

WPF-从第二个窗口返回第一个窗口

来自分类Dev

如何从第二个对象更改第一个对象的值?

来自分类Dev

在数组的数组中查找第一个元素,第二个元素的值最高

来自分类Dev

返回作为第二个参数传递的数组中第一个参数的索引的函数

来自分类Dev

MODx第二个runProcessor返回第一个的响应

来自分类Dev

查询第二个表的第一个值

来自分类Dev

在第二个查询的值中使用第一个查询的值

来自分类Dev

根据第二个值找到内部数组的第一个值

来自分类Dev

计算第二个序列中第一个序列的种子值

来自分类Dev

内部联接两个表,并为第二个表的第一个表中的每个条目返回最大值

来自分类Dev

如何从此JSON数据的第二个元素中获取第一个值?

来自分类Dev

如何为每行返回一系列列中的第一个非NULL值?第二个非NULL值?

来自分类Dev

当第二个表中的布尔值为TRUE时,用第一个表覆盖第二个表的结果

来自分类Dev

SQL 连接,其中第二个表中的值是第一个表中的第一个较低值

来自分类Dev

在 Array 中查找一个值并返回第二个值

来自分类Dev

如何使用第二个 sql 的名称从第一个表中删除值

来自分类Dev

第二个变量取第一个值

来自分类Dev

两个数组,长度相同。如果第一个数组值等于 true 从第二个数组中获取值

来自分类Dev

从第二个数组中存在的第一个数组中删除值

来自分类Dev

Django 在返回第一个请求之前执行第二个请求

来自分类Dev

根据第一个 Droplist 的值填充第二个 Droplist

Related 相关文章

  1. 1

    SQL比较第一个或第二个值对

  2. 2

    SQL根据第二个表中的值列表从第一个表中选择

  3. 3

    为什么我的第一个查询的值作为第二个查询的值返回?

  4. 4

    MODx第二个runProcessor返回第一个的响应

  5. 5

    根据第一个数组中的值在第二个数组中添加值

  6. 6

    在第二个查询的值中使用第一个查询的值

  7. 7

    如果第一个的返回值为true,则显示第二个复选框

  8. 8

    使用colnames返回数据框行中第一个出现的第二个最大值并应用

  9. 9

    WPF-从第二个窗口返回第一个窗口

  10. 10

    如何从第二个对象更改第一个对象的值?

  11. 11

    在数组的数组中查找第一个元素,第二个元素的值最高

  12. 12

    返回作为第二个参数传递的数组中第一个参数的索引的函数

  13. 13

    MODx第二个runProcessor返回第一个的响应

  14. 14

    查询第二个表的第一个值

  15. 15

    在第二个查询的值中使用第一个查询的值

  16. 16

    根据第二个值找到内部数组的第一个值

  17. 17

    计算第二个序列中第一个序列的种子值

  18. 18

    内部联接两个表,并为第二个表的第一个表中的每个条目返回最大值

  19. 19

    如何从此JSON数据的第二个元素中获取第一个值?

  20. 20

    如何为每行返回一系列列中的第一个非NULL值?第二个非NULL值?

  21. 21

    当第二个表中的布尔值为TRUE时,用第一个表覆盖第二个表的结果

  22. 22

    SQL 连接,其中第二个表中的值是第一个表中的第一个较低值

  23. 23

    在 Array 中查找一个值并返回第二个值

  24. 24

    如何使用第二个 sql 的名称从第一个表中删除值

  25. 25

    第二个变量取第一个值

  26. 26

    两个数组,长度相同。如果第一个数组值等于 true 从第二个数组中获取值

  27. 27

    从第二个数组中存在的第一个数组中删除值

  28. 28

    Django 在返回第一个请求之前执行第二个请求

  29. 29

    根据第一个 Droplist 的值填充第二个 Droplist

热门标签

归档