C++におけるスマートポインタの設計と使用法
RAIIによるリソース管理
RAII(Resource Acquisition Is Initialization)は、オブジェクトの生存期間にリソースの確保と解放をバインドする設計パターンです。メモリ、ファイルハンドル、スレッドなどのリソースは、コンストラクタで確保され、デストラクタで自動的に解放されます。これにより、例外や早期returnがあってもリソース漏れを防ぎます。
スマートポインタと ...
7月26日 23:47 投稿
C++ スマートポインタ std::shared_ptrの詳細
C++11で導入されたスマートポインタには、shared_ptr、unique_ptr、weak_ptrの3種類があります。
unique_ptrは所有権を独占するポインタであり、コピー構築子を持たず、所有権の移譲にはstd::moveを使用します。一方でweak_ptrは所有権を持たず、shared_ptrとの併用時に役立ち、特にマルチスレッド環境や循環参照の回避に利用されます。
shared_ptrは複数のポインタが同一 ...
7月16日 19:24 投稿