目录
测试代码
使用测试
预留参数测试
关于细节可以参考文献
第六节 std::bind 绑定器 - 知乎 (zhihu.com)
为了后续工作,需要了解bind的使用
简单来说就是为一个函数绑定一个参数,以方便后续调用函数的时候不需要传参进去
测试代码
#include <iostream>
#include <string>
#include <vector>
#include <functional>void print(const std::string &str, int num)
{std::cout << str << num << std::endl;
}int main()
{using Task = std::function<void()>;std::vector<Task> arry;arry.push_back(std::bind(print, "hello", 10));arry.push_back(std::bind(print, "xiaowei", 20));arry.push_back(std::bind(print, "nihao", 30));arry.push_back(std::bind(print, "qingfeng", 40));for (auto &f : arry){f();}auto func1 = std::bind(print, "测试2.", std::placeholders::_1);auto func2 = std::bind(print, std::placeholders::_1, std::placeholders::_2);func1(1);func2("测试2.",2);return 0;
}
使用测试
符合预期
预留参数测试
当我们想要预留参数的时候,也可以使用上述方法中的测试2,符合预期