13

以下は、Visual Studio 2012 でエラーになります。

void do_something(std::unique_ptr<int> i);
std::unique_ptr<int> i(new int);
std::thread(do_something, std::move(i));

エラー 3 エラー C2248: 'std::unique_ptr<_Ty>::unique_ptr': クラス 'std::unique_ptr<_Ty>' c:\program files (x86)\microsoft visual studio 11.0\vc\ で宣言されたプライベート メンバーにアクセスできませんインクルード\ファンクショナル 1152 1 スクラッチ 役に立つ(!) ファンクショナルでのこの定義: _VARIADIC_EXPAND_0X(_CLASS_BIND, , , , )

これで問題ありません:

do_something(std::move(i));

私は何を間違っていますか?

4

1 に答える 1