问题标签 [bind2nd]
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.
c++ - const_iterator、find_if 和 bind2nd:错误调用不匹配
我尝试使用 find_if 通过其值在地图中查找键。但我无法编译代码:
Bill::CodeCurrency
是一个枚举。
错误:
你能帮我确定这里的错误是什么吗?
gcc - Eigen & GCC 5:类 std::binder2nd 已弃用
我刚刚重新开始了一个搁置了几个月的项目。上次我编译它时它工作得很好,没有任何错误或警告。然而,当我今天早些时候尝试编译它时,我收到了这个警告
当包括我在整个项目中使用的 Eigen/Geometry 时,这个警告实际上出现了数百次
从那以后我没有更新 Eigen(使用 3.2.4,这仍然是今天的最后一次更新)。但是,自从我上次编译以来,GCC 已经更新到 5.1.0(我使用的是 archlinux)
问题:
- gcc 5.1.0 是否有问题告诉我 std::binder2nd 已弃用
- 应该更新 Eigen 吗?
- 如何在不丢失构建的冗长性的情况下使这些特定警告静音?
回答
我认为这std::bind2nd
确实已被弃用,并且已在 Eigen 中进行了提交以解决该问题。然而,这个提交还没有与主分支合并:/(并且没有解决问题,因为有些std::bind2nd
仍然存在于 Eigen 的代码中)
底线是:Eigen 的最后一个稳定版本已被弃用
c++ - std::bind2nd 的替代品
我有一个foo
which 是一个std::vector<int>
. 它表示一组范围的“边缘”值。
例如,如果foo
是 {1, 3, 5, 7, 11},则范围是 1-3、3-5、5-7、7-11。对我来说意义重大的是,这相当于 4 个时期。请注意,每个句点都包括范围内的第一个数字,而不是最后一个数字。因此,在我的示例中,8 出现在第三个(从零开始)期间。7 也出现在第 3 期。11及以上不会出现在任何地方。2 出现在第 0 期。
给定 a bar
which is an int
,我使用
给我应该包含的时期bar
。
我的问题:std::bind2nd
已弃用,所以我应该重构。使用更新函数的等效语句是什么?std::bind
不会以明显的方式“加入”。
c++ - for_each 循环中的 bind2nd
有些事情我目前无法解决。我期待一个每个元素都增加 1 的输出。显然情况并非如此。
仔细一看,我认为是因为bind2nd函数的返回值被丢弃了;也就是说该函数不会修改容器的元素。
我的想法正确吗?有人可以确认或提供未修改容器的正确解释吗?
c++ - std::bind2nd 和 std::bind 与二维数组和结构数组
我知道 C++ 有 lambdas 和 std::bind1st、std::bind2nd 和 std::bind 已被弃用。
但是,从 C++ 的基础开始,我们可以更好地理解新特性。
所以,我从这个非常简单的代码开始,使用一个int 数组:
第一个例子:使用std::bind2nd
第二个例子:使用std::bind
在这两种情况下,输出都是:
如何对如下所示的双向数组
执行相同操作:(我想对第二个坐标进行相同的操作)
并使用这样的结构数组:
在这种情况下,我想对结构数组中的字段“int”执行相同的操作。
谁能帮我?
谢谢
c++ - 错误 C2039:“bind2nd”:不是“std”的成员
我正在将 VS2008 C++ 程序转换为 VS2017 并遇到错误:
进行了一些搜索,发现了一项将 int 设为 size_t 的建议,但没有效果。还有什么想法吗?
c++ - 解释代码?
我遇到了这段代码。从输出中我可以推断出余数数组在除以 2 时存储数字数组的余数。但是我不熟悉语法。
在这种情况下 transform 和 bind2nd 做了什么?我阅读了文档,但我不清楚。