错题汇总11 12

错题11

1.下列关于赋值运算符“=”重载的叙述中,正确的是

A 赋值运算符只能作为类的成员函数重载
B 默认的赋值运算符实现了“深层复制”功能
C 重载的赋值运算符函数有两个本类对象作为形参
D 如果己经定义了复制拷贝构造函数,就不能重载赋值运算符
用户如果没有显式定义,则编译器回生成默认的赋值运算符重载,默认为浅拷贝
成员函数:形参列表一个参数,有一个隐藏的this
拷贝构造函数与赋值运算符函数是两个不同的函数

编程题 

1.求最大连续bit数_牛客题霸_牛客网

2.最近公共祖先_牛客题霸_牛客网

错题12

1.下面关于类和对象的描述中,错误的是

A 类就是C语言中的结构体类型,对象就是C语言中的结构体变量
B 类和对象之间的关系是抽象和具体的关系
C 对象是类的实例,一个对象必须属于一个已知的类
D 类是具有共同行为的若干对象的统一描述体
C语言中的结构体不能有函数,C++中的类不仅可以放数据,还可以放函数

 2.如果有一个类是 myClass , 关于下面代码正确描述的是

myClass::~myClass(){
delete this;
this = NULL;
}
A 正确,我们避免了内存泄漏
B 它会导致栈溢出
C 无法编译通过
D 这是不正确的,它没有释放任何成员变量。

1.不能在析构函数中delete this

~A()

{

delete this;

}

上述代码可以通过编译,但运行时一定会崩溃

2.析构函数作用:对象销毁时,释放对象中资源的问题:并不是所有对象都是从堆上new出来的

3.this==NULL;  this类型:类类型* const this ,this指针的指向不能被修改

3.请问以下说法,哪个是正确的

A 每个类都有一个无参数的构造函数。
B 每个类都有一个拷贝构造的函数。
C 每个类能有多个构造函数。
D 每个类能有多个析构函数。
在类中,如果用户没有显式定义任何构造函数,则编译器会自动生成一个无参的构造函数
但是用户一旦定义,则编译器不再生成
在类中,如果用户没有显式定义任何拷贝构造函数,则编译器会生成一个默认的拷贝构造函数,但是用户一旦显式定义,则编译器不再生成
A(A&)=delete; //删除
每个类只能有一个析构函数

 编程题

1.二进制插入__牛客网

2.查找组成一个偶数最接近的两个素数_牛客题霸_牛客网

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值