ユニークポインタ入門
メニューを表示するにはスワイプしてください
std::unique_ptr を作成するには、std::make_unique を使用します。これは、ユニークポインタを安全かつ効率的に作成する方法を提供する関数です。
new/delete や new[]/delete[] 演算子を使用する場合と比べて、メモリ関連の問題が発生しにくく、優れた代替手段となります。
make_unique.h
12// Using `std::make_unique` to create a unique pointer to a vector of integers std::unique_ptr<std::vector<int>> p_unique_vector = std::make_unique<std::vector<int>>();
std::make_unqiue は動的リソースを割り当て、それを所有するユニークポインタを返します。ユニークポインタがスコープを抜けると、リソースは自動的に解放されます。
new_unique_ptr.h
12// Insecure way to create a unique pointer for a vector of integers. std::unique_ptr<std::vector<int>> p_unique_vector(new std::vector<int>());
上記のコードにおける p_unique_vector ベクターも、ユニークポインタがスコープを抜けると自動的に破棄されます。ただし、例外安全性を最大限に高め、より良いコーディング手法を実現するために、常に std::make_unique の使用が推奨されます。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 1. 章 2
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 1. 章 2