请各位C++高手帮我看一下这道简单的C++选择题.

来源:百度知道 编辑:UC知道 时间:2024/05/27 05:40:57
我主要分不清A和D.请解释一下:谢谢!
18、有关析构函数的说法不正确的是( ) 。
A) 析构函数有且只有一个
B) 析构函数无任何函数类型
C) 析构函数和构造函数一样可以有形参
D) 析构函数的作用是在对象被撤销时收回先前分配的内存空间

A错,一个程序可以有多个对象,就对应多个析构函数,还有就是析构函数可以根据不同形参回收不同的空间,所以可以用多个不同形参的析构函数对一个对象进行处理。

C) 析构函数和构造函数一样可以有形参
首先,对于一个类来说,它确确实实只能有一个析构函数,楼上所谓的一个类的多个对象有多个析构函数是谬论。析构函数也不能有形参,一点也不能有。它常常是被编译器隐式调用的,怎么能有形参呢??

c)