unique_ptr を移動する方法はありますか
unique_ptr<int[]> foo;
ベクトルに?
vector<int> bar;
vector
いいえ、メモリの一部を手渡し、それを配列ストレージとして使用することを期待することはできません。Avector
のストレージは、 が使用するアロケーターから取得する必要がありvector
ます。
アロケータのギミックを使用してvector
、何らかの方法でメモリをポーンすることができます。しかし、指定したサイズに関係なく、必要なvector
数の s を割り当てることができるため、それでも注意が必要です。int
a の内容を配列unique_ptr
の要素に移動できます。あなたが持っていたとしましょうvector<unique_ptr<int[]>>
。しかし、記憶の一部をvector
.