C++相談室 part129 [無断転載禁止]©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0683デフォルトの名無しさん (ワッチョイ f35b-tpgq)
2017/03/18(土) 14:04:04.03ID:waR+gchT0ちょっと輻輳してて申し訳ないが、
> >callbacks.push_back(a->*func))
> と書けるようにしたらbindでthis使う必要ないって話?
そう。というか継承関係ある状態でしかメンバ関数使えないのなら、
thisをbindする意味がないと思った。
(引数はbindしていいが、これもbindなしで継承でも書ける>>669)
ただし、>>673みたいに、「戻り値と引数が同じなら同じ関数型」として扱えるのなら、
継承関係なしのA::funcとB::funcを同じに扱えるからやっぱbindしてないと駄目だな。
ところで、ここでクロージャを使うことに意味はあるのか?
> callbacks.push_back([&]{a.func();});
もちろん使ってもいいが、a.funcがクロージャ内の変数を捕捉しているはずもないし、直接
> callbacks.push_back(a->*func));
で全く問題なくね?
■ このスレッドは過去ログ倉庫に格納されています