gpt4 book ai didi

c++ - boost::async 可以与带有 Visual C++ 的执行器一起使用吗?

转载 作者:行者123 更新时间:2023-11-30 05:27:53 26 4
gpt4 key购买 nike

我在 boost 中收到有关已删除函数的错误,下面的代码仅适用于 Visual C++。 (对比 2015更新 2。我也试过 VS 15 的预览,但它是一样的)

最新版本的 Clang 和 GCC 对此没有问题,但也许 VS 只是更严格但确实正确?

#define BOOST_THREAD_PROVIDES_FUTURE
#define BOOST_THREAD_PROVIDES_FUTURE_CONTINUATION
#define BOOST_THREAD_PROVIDES_EXECUTORS

#include <boost/thread/future.hpp>

class TestEx {
public:
void submit(std::function<void()>) {
}

bool try_executing_one() {
return false;
}

bool closed() {
return false;
}

void close() {
}
};

int main()
{
TestEx tex;
boost::async(
tex,
[]() {});

return 0;
}

如果您想尝试编译它但无法访问 Visual Studio 2015 Update 2 和 boost,您可以在此处在线进行。

http://rextester.com/BAX37541

最佳答案

正如 Sean Cline 指出的那样,答案是使用 boost::executor_adaptor

关于c++ - boost::async 可以与带有 Visual C++ 的执行器一起使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37051118/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com