设px指向一个类的动态分配的对象,则执行“delete̳

题目

设px指向一个类的动态分配的对象,则执行“delete px;”语句时,将自动调用该类的()。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设px是指向一个类动态对象的指针变量,则执行"delete px;"语句时,将自动调用该类的______。


正确答案:析构函数
析构函数 解析:采用new进行动态分配内存生成新对象的时候,对象执行构造函数,在执行delete时,执行对象的析构函数以回收资源。

第2题:

假设AB为一个类,pa为指向该类动态对象数组px的指针,该数组长度为n,则执行“delete pa;”语句时,自动调用该析构函数的次数为______ 。

A.0

B.1

C.n

D.n+1


正确答案:B
解析:由于调用的是deletepa,而不是delete[]pa,所以只析构了一次,调用该析构函数的次数为1次。

第3题:

假定要动态分配一个类型为Worker的具有n个元素的数组,并由r指向这个动态数组,则使用的语句是_______。


正确答案:

【答案】Worker*r=newWorker[n]
【解析】在C++中动态分配栈上内存的命令是new,释放命令 是delete,注意和C语言中的mallcfree向对应。 

第4题:

假定AB为一个类,则执行 “AB *px=new AB[n];”语句时将()

  • A、 动态分配一个数组
  • B、 动态分配一个对象
  • C、 静态分配一个数组
  • D、 静态分配一个对象

正确答案:A

第5题:

假定要动态分配一个类型为struct Worker的对象,并由r指针指向这个对象,则使用的表达式为()=malloc(sizeof(struct Worker))。
struct Worker* r

第6题:

下列关于delete运算符的叙述中,错误的是( )

A使用delete运算符释放类对象时要调用该类的析构函数

Bdelete运算符可以作用于空指针

C由new运算符分配的动态内存空间必须通过delete运算符释放

D使用delete运算符释放动态分配的单个对象和对象数组的语法格式相同


答案:C

第7题:

假定AA为一个类,a为该类公有的数据成员,px为指向该类对象的一个指针,则访问px所指对象中数据成员a的格式为( )。

A.px( )

B.px[a]

C.px->a

D.px.a


正确答案:C

第8题:

设p是指向一个类动态对象的指针变量,则执行"delete p;"语句时,将自动调用该类中的______函数。


正确答案:析构
析构

第9题:

执行int *p=malloc(sizeof(int))操作得到的一个动态分配的整型对象为()。
*p

第10题:

假定AB为一个类,px为指向该类动态对象数组的指针,该数组长度为n,则执行“delete []px;”语句时,自动调用该类析构函数的次数为()。

  • A、 1
  • B、 n
  • C、 n-1
  • D、 n+1

正确答案:B

更多相关问题