由于语义上的需要导致语法的上缺陷,所以导致对象数组在C++中存在陷阱. C++语境:一个基类指针或引用是可以指向派生类对象的,以此可来表现C++对运行时多态的需求: 创建一个对象数组将返回首元素的首地址,因此该地址是可以被该对象所有类属指针所接纳,无编译错误.而问题就在这里,这是个陷阱! 因为数组是所有语言都支持的一种顺序存储形式.从C开始支持的数组,数组操作其实就是相对寻址方式,使用指针是间接寻址方式,因为都是地址操作,因此可以使用指针来描述一个动态数组,即堆申请的数组.但数组元素的寻址,就需…