【发布时间】:2016-02-08 02:49:39
【问题描述】:
如果我需要生成一个调用成员函数的 lambda,我应该通过引用捕获还是捕获“this”?我的理解是 '&' 仅捕获使用的变量,但 'this' 捕获所有成员变量。那么使用'&'更好吗?
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
}
【问题讨论】:
标签: c++ c++11 lambda std-function