メンバ関数を呼び出すラムダを生成する必要がある場合は、参照でキャプチャするか 'this'をキャプチャする必要がありますか?私の理解では、 '&'は使用される変数だけをキャプチャしますが、 'this'はすべてのメンバ変数をキャプチャします。 「&」を使用する方が良いでしょうか?C++ラムダはこれをキャプチャと参照でキャプチャします
class MyClass {
public:
int mFunc() {
// accesses member variables
}
std::function<int()> get() {
//return [this]() { return this->mFunc(); };
// or
//return [&]() { return this->mFunc(); };
}
private:
// member variables
}
ありがとうございました。 –