Я застрял на том, как вызвать функцию std ::, которая была перемещена в shared_ptr…
#include <iostream>
#include <functional>
using func_type = std::function<int()>;
int main(int, char*[])
{
func_type func = [] () { return 42; };
std::cout << func() << "\n"; // -> 42
auto sp_func = std::make_shared<func_type>(std::move(func));
// how do we now call the function?
}
Буду благодарен за любые (умные) указатели в правильном направлении.