Item M3:不要对数组使用多态
语言规范中说通过一个基类指针来删除一个含有派生类对象的数组,结果将是不确定的。多态和指针算法不能混合在一起来用,所以数组与多态也不能用在一起。
Eg:class BST { ... }; class BalancedBST: public BST { ... };
void printBSTArray(ostream& s, const BST array[],int numElements){…}
printBSTArray函数在运行期无法判断array所指向对象的大小,因此无法对array所指向对象进行正确访问。