请补齐下述代码中的空缺1和2。 指出该代码是否存在内存泄漏。

admin2008-11-20  31

问题 请补齐下述代码中的空缺1和2。
指出该代码是否存在内存泄漏。

选项

答案否,或不存在内存泄漏

解析 已知程序的输出全部为1,根据主程序中Stock b;这一语句可以判断出:类Stock有默认的构造函数,且该构造函数将初始化类中的一些成员变量。所以(1)处应该填写的内容为Stock的构造函数,因为该构造函数的函数体内没有语句,所以只能采用初始化列表的方式对成员变量进行初始化。成员函数output输出成员变量的值,因此(2)处应该填写标准的输出cout。
   由于类至少需要一个共有的构造函数,因此,第4行的protected应该更改为public:,而析构函数不能有返回类型,因此第9行应该去掉void。
   main函数中对类的使用没有通过new操作符生成stock类的对象,因此不存在内存泄露,并且main函数中三种对象的生成方式是等价的。
转载请注明原文地址:https://jikaoti.com/ti/fZW7FFFM
0

最新回复(0)