- 简单来说就是为什么不直接调用某个函数而需要通过bind调用
std::bind
可以从已经定义声明的函数 通过固定参数定义出新的函数.
#include <iostream>
#include <functional>
using namespace std;
void f(int x, int y) {
std::cout<<x<<" "<<y<<std::endl;
}
int main()
{
using namespace std::placeholders;
auto f1 = std::bind(f, _1, 42);
f1(1);
}
3 回答1.3k 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
4 回答807 阅读
1 回答880 阅读
1 回答910 阅读
1 回答679 阅读
1 回答786 阅读
在某些算法中只接受一元或二元的函数,这时候直接使用std::bind就会很方便,而不是在声明一个新的函数
还可以实现多态