上例中，b与a共同拥有对数据类对象的同一套引用计数，因此是正确的。如果如此构造b：则对同一个数据类对象，弄出了两套引用计数。这会导致当一套引用计数变为0而销毁数据类对象时，另外一套引用计数的shared_ptr成为“悬空”的错误。Microsoft Visual C++2010是在enable_shared_from_this类模板中定义一个数据类型codice_5。shared_ptr的对象在调用构造函数时，最后将调用一个函数_Enable_shared(_Ty *_Ptr, _Ref_count