_1 对象
可替换参数的占位符。
namespace placeholders {
extern unspecified _1, _2, ... _M
} // namespace placeholders (within std)
备注
_1, _2, ... _M 对象是占位符,其通过 bind 函数 在一个函数调用中分别指定第一个、第二个、…第 M 个参数。 您使用 _N 以指定当评估绑定表达式时应插入第 N 参数的位置。
在此实现中,M 的值为 20。
示例
// std__functional_placeholder.cpp
// compile with: /EHsc
#include <functional>
#include <algorithm>
#include <iostream>
using namespace std::placeholders;
void square(double x)
{
std::cout << x << "^2 == " << x * x << std::endl;
}
void product(double x, double y)
{
std::cout << x << "*" << y << " == " << x * y << std::endl;
}
int main()
{
double arg[] = {1, 2, 3};
std::for_each(&arg[0], &arg[3], square);
std::cout << std::endl;
std::for_each(&arg[0], &arg[3], std::bind(product, _1, 2));
std::cout << std::endl;
std::for_each(&arg[0], &arg[3], std::bind(square, _1));
return (0);
}
要求
标头: <起作用的>
命名空间: std