Kapan std :: kelemahan_ptr berguna?

Saya mulai mempelajari smart pointer C ++ 11 dan saya tidak melihat adanya manfaat penggunaan std::weak_ptr. Adakah yang bisa memberi tahu saya kapan