编译器经常会背着我们做一些我们不希望发生的事情,典型的是隐式转换。不过庆幸的是,编译器只会帮助我们进行一次转换,而不会无休止的隐式转换,直至满足条件为止。例如,下面先定义一个Array模板类: templateclass Array { public: Array(int lowBound,int highBound); Array(int size); T& operator[](int index); bool operator==(const Array& lhs,const Array& rh