Boost::Thread und member-Funktionen
-
kopfschüttler schrieb:
Dies ist ein klarer Fall für
std::bind(&A::funcB, this).Das sehe ich nicht so. Was soll denn an
std::bind(&A::funcB, this)viel besser sein als bei
[this]{funcB();}?
Das Blöde bei dem Funktionszeigern ist noch, dass das nicht so schön funktioniert, wenn die Funktionen überladen sind. Mit Einzug von Move Semantics ist schon so mancher Elementfunktionszeiger-verwendender C++ Code kaputt gegangen, weil plötzlich so'was wie push_back überladen ist. Da ist das mit den Lambdas dagegen (zumindest in diesem Fall) eher schmerzfrei.
Außerdem, wenn du schon std::bind verwendest, kannst Du auch gleich den variadischen Konstruktor von std::thread ausnutzen. Dadurch wird ein
bindauch überflüssig und es werden sogar move-only-Parameter korrekt unterstützt.