素早く問題を解いてInput⇔Outputを繰り返し!
会員レベル
ログイン
メンバーシップアカウント
会員レベル
ログイン
メンバーシップアカウント
HOME
Lv028
「Lv028」の記事一覧
`std::shared_ptr` を引数で渡す際、所有権を共有しない(参照するだけ)場合の最適な型は。
所有権に関与しないなら生ポインタや参照で渡す方がカウンタ操作のオーバーヘッドがなく軽量である。
2026年3月4日
`std::unique_ptr
` の `D` は何を表すか。
第2テンプレート引数で、オブジェクト破棄時に呼ばれる処理の型を指定できる。
2026年3月4日
`std::weak_ptr` が管理対象にアクセスするために `lock()` を呼ぶ必要がある理由は何か。
lock()は対象が存在すればshared_ptrを生成し、その間は確実に生存を保証する。
2026年3月4日
`std::shared_ptr` において、管理しているポインタが指す先の型を変換する関数はどれか。
スマートポインタ専用のキャスト関数(static/dynamic/const/reinterpret)が用意されている。
2026年3月4日
`std::unique_ptr` において、現在の保持ポインタを別のものに入れ替えるメソッドはどれか。
reset(new_ptr)を呼ぶことで、古いオブジェクトを破棄し新しいオブジェクトの管理を始める。
2026年3月4日
`std::shared_ptr
p(new T[10]);` のように配列を渡した際の問題点は何か(C++17以前)。
デフォルトのデリータは単一オブジェクト用のdeleteを呼ぶため、配列には不適切である。
2026年3月4日
`std::unique_ptr` を別のコンテナ(std::vectorなど)に格納することは可能か。
unique_ptrはムーブ専用型(Move-only type)としてコンテナに格納できる。
2026年3月4日
`std::weak_ptr` の目的として「生存確認」以外に重要な役割はどれか。
互いにshared_ptrを持ち合うと解放されなくなるため、一方をweak_ptrにする。
2026年3月4日
`std::shared_ptr` の初期化において `new` を直接使うより `std::make_shared` を使うべき理由は。
make_sharedは管理領域とオブジェクトを一つのメモリブロックに配置し、効率と安全性を高める。
2026年3月4日
`std::unique_ptr` を関数の戻り値として返す際、`std::move` は必須か。
現代のC++では戻り値の最適化により、moveを明示しなくても効率的に返却される。
2026年3月4日
投稿のページ送り
1
…
181
182
183
…
297