61day---C++面试题

1.给定声明 const char * const * pp; 下列操作或说明正确的是 A
A pp++
B (*pp)++
C (*pp) = \c\;
D 以上都不对
解:相当于(char const) (
const) *pp
**p是char型常量
*p是char const *型常量
p是char const *const型变量

2.c++定义一个空的类CTest,CTest没有定义任何成员变量和成员函数,在32位机器上,以下结论正确的有 BC
A 对该类求sizeof,结果为0.
B 给CTest添加构造函数,再对CTest求sizeof,结果为1.
C 给CTest添加虚函数,再对CTest求sizeof,结果为4.
D 给CTest添加虚函数,再对CTest求sizeof,结果为5.

解:
(1)空类的大小是1,空类的实例大小就是类的大小。如果实例的指针,则sizeof(a)就是指针的大小即4
(2)虚函数,在32位上是4,64位上是8
(3)虚函数指针大小是4
以上单位均为字节

3.虚析构函数的作用是 delete动态对象时释放资源

4.值类型的变量赋值只是进行数据复制,创建一个同值的新对象,而引用类型变量赋值,仅仅是把对象的引用的指针赋值给变量,使它们共用一个内存地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值