C++:tr1::bind 问题 (C2065)

标签 c++ syntax compiler-errors

我在使用 bind 时遇到编译器错误:

using namespace std;

bool odp(int arg1, int arg2);

// ...

find_if(vec.begin(), vec.end(), tr1::bind(odp, iValue, _1)); // C2065

我的目标是柯里化(Currying) odp(),所以它的第一个参数是 iValue,并在 find_if 中应用该函数。

错误:

C2065: '_1' : undeclared identifier.

我做错了什么?

最佳答案

您需要using namespace std::tr1::placeholdersusing std::tr1::placeholders::_1

关于C++:tr1::bind 问题 (C2065),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3049866/

相关文章:

c++ - 如何在 yaml-cpp 中发出带有额外换行符的映射序列

ios - Swift:如何解决 'protocol' 类型的弱变量非法的问题

swift - SwiftUI-调用UUID()。uuidString id时出错

c++ - yaml-cpp 出现编译器错误

c - 当我用 C 编译时,头文件中出现导入错误

c++ - 通过引用传递,源在操作中被修改

c++ - 示例程序崩溃

c++ - 我如何在 boost::spirit::qi 中解析带有换行符的列表?

mysql - H2提示语法错误,MySQL接受它-但是,语法错误会给出正确的结果: Column … must be in the GROUP BY list;

syntax - 在一行中编写 F# 对象表达式