在C++中,可以使用std::async函数来创建一个std::future对象。std::async函数会异步执行一个任务,并返回一个std::future对象,可以通过该对象来获取异步任务的返回值或异常信息。
下面是一个示例代码,演示如何使用std::async创建一个std::future对象:
#include <iostream>
#include <future>
int foo()
{
return 42;
}
int main()
{
// 创建一个std::future对象
std::future<int> future_result = std::async(foo);
// 等待异步任务完成,并获取返回值
int result = future_result.get();
std::cout << "Result: " << result << std::endl;
return 0;
}
在上面的示例中,我们定义了一个函数foo,然后使用std::async函数异步执行该函数,并返回一个std::future对象。我们可以使用get()方法来等待异步任务完成,并获取返回值。