添加智能指针的实现(smart pointer implement)