Как мне исправить приведенный ниже код, чтобы сохранить лямбду, чтобы я мог вызвать ее позже?
В настоящее время я получаю сообщение об ошибке: поле 'm_callback' имеет неполный тип .
class Foo
{
public:
Foo() { }
~Foo() { }
template< typename FuncT >
void setCallback( FuncT&& callback )
{
m_callback = callback;
}
private:
auto m_callback; // this line is broken
};
int main(int argc, char** argv)
{
Foo foo;
foo.setCallback( [] (int x){ return true; } );
return 0;
}