HOMELv028 `std::weak_ptr` の目的として「生存確認」以外に重要な役割はどれか。 2026年3月4日 互いにshared_ptrを持ち合うと解放されなくなるため、一方をweak_ptrにする。 `std::unique_ptr` を関数の戻り値として返す際、`std::move` は必須か。 `std::shared_ptr<T> p(new T[10]);` のように配列を渡した際の問題点は何か(C++17以前)。