C++面向对象编程之point-like classes的智能指针和迭代器、function-like classes即仿函数
1.智能指针
智能指针里面包含其他指针的形式和 委托 感觉比较像;
智能指针一定都需要重载 * 和 -> 操作符 ;
这个符号它作用后还能再继续作用下去;
2.迭代器: 这里主要关注 * 和 -> 操作
这里 * 就是要取其值,使用返回指针的data;
注意: 从上图右边也能了解到什么时候使用 "." 和 "->" , "." 是在 "对象." ,"->"是在"对象地址->";
其实指针才使用 -> 调用,指针就是地址,所以地址也是 -> 调用
3.function-like classes
任何东西可以接受 () 这个操作符,我们就叫其为像函数或者仿函数
4.unary_function和 binary_function
unary_function<T, T>,它是一个操作数
binary_function<T, T, T>,它是两个操作数
他们内存大小理论都是0,但是实际可能是1