C++ 11まで、私はstd::vector<T>
が必要と思いますT
はCopyAssignableとCopyConstructibleになります(容量を拡張するにはオブジェクトを別のメモリ位置にコピーする必要があります)。しかし、あなたがv1 = v0
をしたら、私はそれが実際に値をコピーすると仮定します。CopyAssignable/CopyConstructibleを必要としない標準コンテナは何ですか?
value_type
の機能を必要としない標準容器がありますか?
そうでなければ、私はコピー可能/割り当て可能ではないタイプを持っていますが、どのコンテナが移植可能でどれくらい安全ですか?
実際にはそうではありません。私は削除コピーコンストラクタを持つクラスを持っており、同じコードはg ++ 6/7でうまく動作しますが、g ++ 5.4では失敗します。おそらく、コピーは動きに置き換えられているからです。 –