0

クラスがあります。unique_ptr のメンバーを持っています。

struct A
{
    std::unique_ptr<int> m;
};

そして、次のステートメントは機能するはずです

A a;
A b;
a = std::move(b);
std::swap(a, b);

ただし、VC++ 2012 にはコードのコンパイルにバグがあります。R-Value 引数を使用して独自のコピー コンストラクターと代入演算子を手動で生成する以外に、バグを回避する簡単な方法はありますか? 自動生成 (マクロなどによる) は問題ありません。

4

1 に答える 1

2

いいえ、マクロ以外にこのバグを回避する簡単な方法はありません。

于 2013-08-29T23:29:39.973 に答える