首页 > 试题广场 >

关于C++的说法错误的是

[不定项选择题]
关于C++的说法错误的是
  • 一个类可以有多个析构函数
  • 析构函数可以为virtual
  • 编译器不会为空类产生默认构造函数
  • 可以用free释放一个类对象
推荐
【正确答案】A C D
【解析】A 选项错误,一个类只能有一个析构函数
B 选项正确
C 选项错误,一个类如果没有指定构造函数,编译器会生成一个无参的默认构造函数
D 选项错误,free 不能用于释放一个类的对象,应该使用 delete,因为可以执行对象的析构函数,而 free 不能
 
更多C++基础专业知识讲解,点击链接即可查看
https://www.nowcoder.com/link/zxyl-cpp90
编辑于 2021-11-19 10:22:45 回复(0)
一个类只有一个析构函数且可以是虚函数,编译器会在某些时候为空类产生构造函数,free用来释放内存空间,若要释放一个对象还需调用其析构函数。
发表于 2018-09-19 22:11:56 回复(0)
有多少人选的唯一错误的答案。。。
发表于 2018-09-09 15:32:48 回复(0)
释放一个类对象还需要调用其析构函数,因此应该用delete,free不会调用析构函数
发表于 2021-01-08 09:33:36 回复(0)
D选项有问题,这道题答案应该是ACD,因为基本数据类型不存在析构函数,所以直接free是可以的。
发表于 2021-11-10 02:05:58 回复(0)
一个类可以有多个构造函数,但是有且只能有一个析构函数;
存在“虚析构函数”;
发表于 2021-04-20 15:28:31 回复(0)
选项a 继承怎么说
发表于 2021-04-13 14:56:39 回复(0)
C选项 只有在4中情况下才提供构造函数 《深入理解C++对象模型》
发表于 2018-09-07 11:26:52 回复(0)