C++复习题

简介: C++复习题

设已经有A,B,C,D4个类的定义,程序中A,B,C,D析构函数调用顺序为? ( )

C c;
void main()
{
 A*pa=new A();
 B b;
 static D d;
 delete pa;
}

分析:首先手动释放pa, 所以会先调用A的析构函数,其次会跟定义相反的顺序释放局部对象,这里只有b,就释放b,再释放静态局部对象d,再释放全局对象c

关于引用以下说法错误的是( )。(阿里巴巴2015笔试题)

A.引用必须初始化,指针不必
B.引用初始化以后不能被改变,指针可以改变所指的对象
C.不存在指向空值的引用,但是存在指向空值的指针
D.一个引用可以看作是某个变量的一个“别名”
E.引用传值,指针传地址
F.函数参数可以声明为引用或指针类型

A.引用必须初始化,必须在定义引用时明确引用的是哪个变量或者对象,否则语法错误,指针不初 始化时值为随机指向

B.引用一旦定义时初始化指定,就不能再修改,指针可以改变指向

C.引用必须出示化,不能出现空引用,指针可以赋值为空

D.简单粗暴的引用理解可以理解为被引用变量或对象的"别名"

E.引用表面好像是传值,其本质也是传地址,只是这个工作有编译器来做,所以错误

F.函数调用为了提高效率,常使用引用或指针作为函数参数传递变量或对象

目录
相关文章
|
6月前
|
C++
【C++】— —期末复习题(六)
【C++】— —期末复习题(六)
|
6月前
|
C++
【C++】— —期末复习题(四)
【C++】— —期末复习题(四)
|
6月前
|
C++
【C++】期末复习题(二)
【C++】期末复习题(二)
|
C语言
C Primer Plus第六版(中文版) 课后复习题2 9.10 复习题
C语言的基本模块是什么? c语言程序中的基本功能模块为“函数”。一个C语言程序可以由一个主函数和若干个函数构成;一个大的应用程序一般应该分为多个程序模块,每一个模块用来实现一个功能,而模块的功能是由函数完成的。
113 0
|
存储 编译器 程序员
C Primer Plus第六版(中文版) 课后复习题1 1.12 复习题
1.对编程而言,可移植性意味着什么? 完美的可移植程序是,源代码不需要任何修改就能在不同计算机系统中成功编译的程序。
79 0
|
Web App开发 网络协议 关系型数据库