`std::shared_ptr` and exception safety
`std::unique_ptr` and exception safety
Using `std::unique_ptr` and `std::shared_ptr` in container classes
Using `std::enable_shared_from_this` with `std::shared_ptr`
Differences between `std::unique_ptr` and `std::weak_ptr`