将推断的类型传递给std :: find_if lambda函数

科林·巴斯内特

我有以下代码。我试图消除将localization_data_t::language_t类型显式传递给lambda参数的需要。

auto language_itr = std::find_if(languages.begin(), languages.end(), [&](const localization_data_t::language_t& language)
{
    return language.code == language_code;
});

我假设有一种方法可以执行此操作,因为要迭代的对象类型可以由编译器通过迭代器的基础类型派生。但是,我在旅行中没有找到这样的例子。

任何帮助,将不胜感激。

拉普兹

您可以decltype在C ++ 11中使用:

auto result = std::find_if(v.begin(), v.end(), [](const decltype(*v.begin())& t) { /*   */ });

在C ++ 1y中,您可以使用auto

auto result = std::find_if(v.begin(), v.end(), [](const auto& t) { /*   */ });

还有,std::iterator_traits但是更冗长。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将通用Lambda与std :: find_if一起使用

来自分类Dev

使用带有std :: find_if的boost :: lambda或boost :: phoenix

来自分类Dev

std :: find_if和lambda引用结构字段

来自分类Dev

C ++-遍历从find_if返回的std :: vector <>

来自分类Dev

将输入参数传递给lambda函数中的std :: function

来自分类Dev

C ++在find_if中使用lambda查找对变量

来自分类Dev

C++ 如何使用 lambda find_if 选择多个对象

来自分类Dev

当将这些参数传递给类型化的函数时,为什么TypeScript不推断函数的参数类型?

来自分类Dev

将lambda传递给模板函数

来自分类Dev

将变量传递给 lambda 函数

来自分类Dev

将Lambda函数传递给通用函数C ++

来自分类Dev

将Lambda函数传递给通用函数C ++

来自分类Dev

将lamda传递给std :: find

来自分类Dev

将整数类型传递给mex函数

来自分类Dev

将Scala类型传递给函数

来自分类Dev

将“类型”参数传递给函数

来自分类Dev

C ++将变量类型传递给函数

来自分类Dev

Dart将类型传递给函数失败

来自分类Dev

C ++将变量类型传递给函数

来自分类Dev

将Scala类型传递给函数

来自分类Dev

将成员函数和 lambda 传递给 std::function

来自分类Dev

如何将find结果传递给Bash中的函数?

来自分类Dev

传递给通用函数包装器(如_.debounce)的函数的类型推断

来自分类Dev

<algorithm>库中的find_if谓词用作函数的功能要求是什么?

来自分类Dev

将lambda函数作为参数传递给需要接口的方法

来自分类Dev

如何将参数传递给AWS Lambda函数

来自分类Dev

将数据从POST API请求传递给lambda函数

来自分类Dev

如何将lambda传递给需要类参数的函数

来自分类Dev

将函数作为参数传递给Lambda Java 8

Related 相关文章

热门标签

归档