メンバ関数のコールバックを処理するために、より新しいバージョンのC++でより良い選択であることをちょっと調べてください。 ご協力いただければ幸いです。メンバ関数コールバックのバインドまたはラムダC++ 14
template<class T>
void addCallBack(void(T::*someFunc)(int), T* instance) {
func = std::bind(someFunc, instance, _1);
}
std::function<void(int)> func ;
または
template<class T>
void addCallBack(T* instance) {
func = [&instance](int x) {
instance->someFunc(x);
}
}
std::function<void(int)> func;
「より良い」と定義します。 – stark
Lambdaは、パフォーマンスの面で(と私の意見では、明快さの点で)ほとんど「束縛」よりも優れています。 – 0x5453
仕事、正しい方法、良いプログラミングの練習などのためにもっと適切です。私はC++でほとんどのことを行う方法が100種類あり、この場合正しい方法があるのか、それとも重要なのかを知りたいと思いますか? – user3220058