阅读GP的代码, 核心是理解操作符重载和模板操作....操作符重载相当于与内置类型的接口相统一, 而模板则是为了能应对各种各样的类型.如果我们有自己的数据, 只要我们也实现算法所需的操作符和用于操作数据的迭代器, 我们就也能调用STL的算法来操作我们自己的数据...重载操作符的时候要尽量使其效果与int类型操作看齐, 不要乱改导致语义混乱加大理解难度, 且操作符重载无法改变操作符的优先级, 组合, 参数个数等....模板
模板编程主要分为:
模板类: 最简单的模板, 在声明类的上一行加上template, 用T表示当前未定的类型名, 可以有多个....除了四个操作符重载外, 迭代器还需要实现5个性质访问符, 因为STL算法会询问迭代器的一些性质来进行偏特化的计算.