This confused question is stemed from https://www.cplusplus.com/reference/memory/shared_ptr/shared_ptr/ this page
struct C {int* data;};
...
std::shared_ptr<int> p6 (new int);
std::shared_ptr<int> p7 (std::move(p6));
std::shared_ptr<C> obj (new C);
std::shared_ptr<int> p9 (obj, obj->data);
reference-count of p7, p9 is two, can you tell me the detail