请解释智能指针中 weak_ptr 如何指向 shared_ptr,以及 unique_ptr 如何转移所有权。
考察说明
考察智能指针的引用计数、弱引用机制与所有权转移语义
回答思路
- 说明 weak_ptr 通过观察 shared_ptr 的引用计数而指向同一资源,不增加强引用计数
- 解释 weak_ptr 需通过 lock() 提升为 shared_ptr 才能访问资源
- 说明 unique_ptr 通过 std::move 转移所有权,转移后原指针为空
- 区分 weak_ptr 的拷贝与 unique_ptr 的移动语义
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。