我有两个关于以下程序的问题:
1.程序是否只创建动态元素(类型矩形和六边形),还是指向它们的指针是动态的?
1.程序是否只创建动态元素(类型矩形和六边形),还是指向它们的指针是动态的?
2.为什么程序最后没有删除.例如这样的事情:(如果我正确地假设只有元素是动态的..)
for(i=0;i<3;i++) delete shapeArray[i];
非常感谢,这个网站帮助了我很多老师无法帮助的事情!
使然
该计划是:
int main() { // Create array of pointers to Shapes of varIoUs types. const int NUM_SHAPES = 3; Shape * shapeArray[] = { new Hexagon(),new Rectangle(),new Hexagon() }; // Set positions of all the shapes. int posX = 5,posY = 15; for (int k = 0; k < NUM_SHAPES; k++) { shapeArray[k]->setPosition(posX,posY); posX += 10; posY += 10; }; // Draw all the shapes at their positions. for (int j = 0; j < NUM_SHAPES; j++) { shapeArray[j]->draw(); } return 0; }