#include <future>
class Object
{
public:
Object(bool b)
{
}
};
Object func()
{
Object object(true);
return object;
}
int main(int argc, char** argv)
{
std::future<Object> future_object;// 1, тут все ок.
future_object = std::async(func);// 2, тут нет конструктора по умолчанию.
return 0;
}
I2luY2x1ZGUgPGZ1dHVyZT4KCgpjbGFzcyBPYmplY3QKewpwdWJsaWM6CgogIE9iamVjdChib29sIGIpCiAgewoKICB9Cn07CgpPYmplY3QgZnVuYygpCnsKICBPYmplY3Qgb2JqZWN0KHRydWUpOwogIHJldHVybiBvYmplY3Q7Cn0KCmludCBtYWluKGludCBhcmdjLCBjaGFyKiogYXJndikKewogIHN0ZDo6ZnV0dXJlPE9iamVjdD4gZnV0dXJlX29iamVjdDsvLyAxLCDRgtGD0YIg0LLRgdC1INC+0LouCgogIGZ1dHVyZV9vYmplY3QgPSBzdGQ6OmFzeW5jKGZ1bmMpOy8vIDIsINGC0YPRgiDQvdC10YIg0LrQvtC90YHRgtGA0YPQutGC0L7RgNCwINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOLgoKICByZXR1cm4gMDsKfQ==