#include <iostream>
#include <memory>
#include <future>
using namespace std;
unique_ptr<int> uq(new int);
void foo(unique_ptr<int> q)
{}
int main()
{
foo(move(uq));
//^OK
async(foo, move(uq));
//^Error: error C2248: 'std::unique_ptr<_Ty>::unique_ptr' :
// cannot access private member declared in class 'std::unique_ptr<_Ty>'
}
爲什麼'異步'不能編譯?我使用Microsoft Visual Studio 2012(v4.5.50709)。std ::異步與std :: unique不編譯
作爲獨立語句的'...'不是有效的C++,而且你缺少一些'#include'。 –
@Lightness軌道競賽 我只是不想重複大家都知道的代碼。 – user2431141
你對「每個人都知道」的想法是主觀的,可能包含錯誤。最好完全拋棄'...',並寫下正確的'#include's,以便我們可以看到_you_正確地知道它。畢竟,這就是你來到這裏的原因,對吧? –