자리 표시 자 사용과 관련하여 너무 많은 예제가 있지만 다음과 같은 두 문장의 차이점을 설명 할 수 있다면 조금 혼란 스러울 것입니다.다음 예제에서 Boost :: bind의 자리 표시 자 역할
void SomeMethod(int a)
{
std::cout << "Parameter pass " << a << "\n";
}
Statement 1 : boost::bind(&SomeMethod,_1)(12);
Statement 2 : boost::bind(&SomeMethod,12)();
저는 체인 1 인 문장 1을 이해합니다. boost::bind(&SomeMethod,_1)
의 출력에는 12의 매개 변수가 첨부됩니다. 그러나 나는 statement 2에서 일어나는 일을 이해하는 데 어려움이있다. 매개 변수가 boost :: bind를 사용하여 직접 전달 될 수 있다면 (statement 2에서와 같이) 왜 placeholder가 필요한가? 자리의 용도
'bind'의 결과를 즉시 호출하고 싶다면 처음에는'bind'가 필요 없습니다. 실제 사용 사례는 이제 'bind'를 호출하고 결과 300 함수와 5000 라인을 호출합니다. –