由于可以重载解除应用运算符*和间接成员访问运算符->, 就可以定义一个表示智能指针的类型,他类似于一个指针,但实际上是一个类对象。
例如:标准库中广泛使用的类迭代器
ps:如此可以看出,智能指针和OC中的autorelease是不一样的。
智能指针的关键的两个重载操作:
- 重载 * 运算符
- 重载 -> 运算符
由于可以重载解除应用运算符*和间接成员访问运算符->, 就可以定义一个表示智能指针的类型,他类似于一个指针,但实际上是一个类对象。
例如:标准库中广泛使用的类迭代器
ps:如此可以看出,智能指针和OC中的autorelease是不一样的。
智能指针的关键的两个重载操作: