概念:比指针更加智能的指针,于是变为了class
补充:C++中操作符重载很重要,而smart pointer就需要包含指针的和->的操作符,所以就需要重载。
C++:pointer-like classes,智能指针
以上就显示出一个pointer-like class shared_ptr如何通过操作符重载->和
拥有了与一般指针相同的操作。
C++语法规定:->操作符重载后,在类对象调用操作符并返回对象后,->任然会作用在后面不会消失。

pointer-like classes,关于迭代器
背景:在STL中的容器中,一定带迭代器,迭代器作为一种智能指针就会作为容器中的一个指针,用于操作容器。
如何设计迭代器,首先得明确使用端的意图,然后再通过设计端去实现。例如:iterator中的操作符->需要的到什么结果呢?那么设计端就要去实现这个目的。

相关文章: