_1
Nesne
Değiştirilebilir bağımsız değişkenler için yer tutucular.
Sözdizimi
namespace placeholders {
extern unspecified _1, _2, ... _N
} // namespace placeholders (within std)
Açıklamalar
Nesneler _1, _2, ... _N
, tarafından bind
döndürülen bir nesneye yönelik bir işlev çağrısında sırasıyla N. bağımsız değişken aracılığıyla birinci, ikinci. ...'yi temsil eden yer tutuculardır. Örneğin, ifade değerlendirilirken bind
altıncı bağımsız değişkenin nereye eklenmesi gerektiğini belirtmek için kullanırsınız_6
.
Microsoft uygulamasında değeri _N
20'dir.
Örnek
// 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);
}
1^2 == 1
2^2 == 4
3^2 == 9
1*2 == 2
2*2 == 4
3*2 == 6
1^2 == 1
2^2 == 4
3^2 == 9