问题标签 [boost-lambda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1294 浏览

c++ - 正确使用 boost lambda

考虑以下一段 C++0x 代码:

它在 Boost Lambda 中的外观如何(因为这个 C++0x 功能还不能在 GCC 4.4 中使用)?

0 投票
1 回答
2031 浏览

c++ - boost lambda 与 phoenix

我最近开始研究 boost phoenix,作为 lambda 的替代品。phoenix 是 lambda 的完全替代品,还是 phoenix 不提供某些 lambda 功能?凤凰成熟了吗?有什么我应该知道的吗?

我的主要兴趣是运算符组合,控制语句和强制转换不那么重要

谢谢

0 投票
2 回答
919 浏览

c++ - 凤凰城中的 C++ boost::lambda::ret 等价物

Boost lambda 允许使用ret<T>模板覆盖推导的返回类型。我曾尝试在 phoenix 中搜索等价物,但找不到。

凤凰有等价物吗?我知道如何制作自己的替代品,但我宁愿不这样做。谢谢你

0 投票
1 回答
521 浏览

c++ - 如何使用带有 boost::transform_iterator 的凤凰表达式?

<更新>像往常一样,这个问题是错误的。实际的问题是:为什么transform_iterator 不使用常规的result_of<> 元函数来确定返回类型,而不是直接访问UnaryFunc::result_type。发布了解决方法的答案。 </更新>

具体来说,有没有办法让 phoenix 表达式result_type按照 std::unary_function 概念的预期公开类型?boost::transform_iterator 似乎期待这一点,从查看它的 src 来看,我没有看到一个简单的解决方法。

这是一些重现我遇到的问题的代码:

编译此错误消息的相关部分是(gcc 4.3.4,boost 1.43):

我对 boost::lambda (缺少result_type)有同样的问题。我以为我在过去看到过 make_transform_iterator 和 lambda 的类似用法,现在我想知道我是否只是想象它。

phoenix 或 lambda 中是否有提供的包装器或其他一些机制来公开result_type

0 投票
3 回答
805 浏览

c++ - lambda 表达式中的 return 语句

我在std::for_each调用中创建了一个 lambda 表达式。

其中有这样的代码,但我有构建错误告诉我

在我的脑海中,我认为这boost-lambda主要与仿函数一起使用,所以由于return声明不是那样的,所以调用它是行不通的。

你知道它是什么以及如何解决它吗?

谢谢AFG

0 投票
2 回答
652 浏览

map - 将地图复制到矢量

我必须将某些元素从 std::map 复制到向量中。它应该像在这个循环中一样工作:

因为我想避免使用任何仿函数,而是使用 boost::lambda,所以我尝试使用 std::copy,但无法正确使用。

我是 lambda 表达式的新手,我不知道如何正确使用它们。我在 Google 或 StackOverflow 上也没有得到任何有用的结果。 这个问题类似

0 投票
3 回答
1110 浏览

c++ - lambda绑定问题?

我是boost的新手。这是我的测试代码,

构建项目并产生错误:

错误 C2665: 'boost::lambda::function_adaptor::apply' : 2 个重载都不能转换所有参数类型

我想知道怎么了?非常感谢。

0 投票
2 回答
560 浏览

c++ - 在 boost::lambda 中使用 boost::format

由于某种原因,我无法boost::formatboost::lambda. 这是我的代码的(希望)可编译的简化:

  • 第一个std::for_each产生预期的输出
  • 第二个std::for_each只输出没有任何数字的空格

这是为什么 ?我真的不熟悉,boost::lambda所以我可能在这里遗漏了明显的东西。

请不要提出std::copy基于答案的建议:我的实际代码不起作用std::vector但在boost::fusion::vectorstd::for_each实际上是boost::fusion::for_each)。

0 投票
3 回答
996 浏览

c++ - 如何在复合类型上使用 Boost.Bind?

我有std::map<int, std::pair<short, float> >,我需要short在这张地图中找到最小值。我该如何使用boost::bindwithstd::min_element()这个?

boost::lambda?

0 投票
1 回答
1648 浏览

c++ - boost::bind 和 boost::lambda::bind 有什么区别?

我可以看到 Boost 有两个不同的绑定库,一个是“独立的”,可以通过 include 使用boost/bind.hpp,另一个可以通过 include使用boost/lambda/bind.hpp。这两者有什么区别?