C++基础

来源:互联网 发布:mac专柜价 编辑:程序博客网 时间:2024/05/01 15:53

各位亲 有时间可以去看看我的  “金骏家居淘宝店” http://jinjun1688.taobao.com/shop/view_shop.htm?tracelog=twddp 买时说明在我的博客看到有优惠哦 还有意外礼品赠送  真正的程序员淘宝店


1、static有什么用途?

      1)限制变量的作用域

      2)设置变量的存储域(堆,主动分配内存的是堆)

  2、引用与指针的区别?

1)引用必须初始化,指针不必

2)引用初始化有不可更改,指针可以

3)不存在指向空值的引用,但存在指向空值的指针  

    3、描述实时操作系统的基本特性

在特定时间内完成特定的任务,实时性与可靠性

    4、全局变量与局部变量在内存中是否有区别?

   全局变量存在静态存储区,局部变量存在栈

    5、什么是平衡二叉树?

左右子树都是平衡二叉树且左右子树的深度差值不大于1

    6、堆栈溢出是什么原因导致?

没有回收内存资源,内存泄露导致

    7、什么函数不能声明为虚函数

 构造函数

8、冒泡排序的时间复杂度是?

O(n^2)

9、写出float、bool、int、指针与零值比较的if语句

float:if(x>0.000001&&x<-0.000001)

int:if(0!=x)

bool:if(x)

指针:    if(null==x)

10、Internet采用什么协议,协议有哪些主要的层次结构

 TCP/IP协议应用层/数据链路层/传输层/物理层

11、IP地址分为哪两个部分?

IP地址分网络号和主机号    不过要和“子网掩码”按位与 之后才能区分哪些是网络位,哪些是主机位

12、Internet物理地址和IP地址转换采用什么协议?

ARP(地址解析协议)

13、用户输入M 、N值,从1-N开始顺序循环数数,每当数到M输出该数值,直至全部输出。写出程序

14、不能做Switch的参数类型是:

switch的参数不能为实型。(只能是int 或者 char)

15、(这是一道考验数列的题目)-1、2、7、28、126 请问28和126中间的那个数是什么?

规律是:奇数位:n^3-1

偶数位:n^3+1

4^3-1=63

16、用两个栈来实现一个队列功能?

设两个栈 A B 一开始为空

       入队:

将新元素push如A中

出队:

1)判断B是否为空

2)如果为空,则将栈A中的所有元素一次pop出并push如栈B

3)将栈B的栈顶元素pop出

  这样就实现了队列入队出队的复杂度是O(1)

17、对于一个频繁使用的短小函数,在C语言中用什么实现,在C++中用什么实现?

C用宏定义,C++用inline

18、写一个标准的宏MIN ,比较两个参数 并返回小的那一个?

   #define  MIN(A,B) ((A)<=(B)?(A):(B))

       19、写一个死循环?

1) while(1)

                      {

      }

2)for(;;)

                      {

      }

                 3)Loop:

                       ...

                       goto Loop;

20、面向对象的程序设计思想是?

把数据结构和对数据结构的操作方法封装成一个个对象

21、什么是类?

把一些具有共性的对象归并为一个个集合,就成了类

22、对象具有两方面特征是什么?分别是什么含义?

对象都具有的特征是:静态特征和动态特征

静态特征是能描述对象的一些属性,动态特征是指对象表现出的行为。

23、在头文件中进行类的声明,在对应实现文件中进行类的定义有什么意义。

这样能够提高效率,因为分开只需要编译一次生成对应的.obj文件后,再次应用到该类的地方,这个类就不会再次被编译,从而大大提高了效率。

24、在类的内部定义成员函数的函数体,这种函数会具有哪些属性?

这种函数会自动为内联函数,这种函数在调用的地方在编译阶段都会进行代码替换。

25、成员函数通过什么来区分不同对象的成员数据?

通过this指针来区分,因为它指向的是对象的首地址。

26、C++编译器自动生成类的四个缺省函数是什么?

默认构造函数、缺省拷贝构造函数,赋值函数,析构函数

   27、拷贝构造函数在哪几种情况在会调用?

1.当类的一个对象去初始化该类的另外一个对象时

2.如果函数的形参是类的对象,调用函数形参和实参结合时、

3.如果函数的返回值是对象,函数调用完成返回时。

28、构造函数和普通函数的区别?(声明形式上的不同)

构造函数是类的一种特殊成员函数,一般情况下是用来初始化对象成员变量。

29.什么时候必须重写拷贝构造函数

当构造函数涉及到动态分配内存空间时,要自己写拷贝构造函数,而且是深拷贝。

30.构造函数的调用顺序是什么?

先调用基类构造函数,按声明顺序初始化成员数据,再调用自己的构造函数

31.哪几种情况必须用到初始化成员列表

类的成员是常量成员初始化

类的成员是对象成员初始化,而该对象没有无参构造函数。

类的成员为引用时。

32.什么是常对象?

常对象时什么情况下都不能修改其成员的值得对象

33.静态函数存在的意义

静态私有成员在类外不能被访问, 可通过类的静态成员函数来访问;

当类的构造函数是私有的时,不能像普通类那样实例化自己,必须通过静态成员函数来调用构造函数实现。

34.在类外怎么访问类的非公有成员

子类,友元,公有成员函数

35.什么叫抽象类

不用来定义对象而只作为基本类型用作继承的类

36.操作符重载

为了对用户自定义数据的数据类型操作与系统内部定义的数据类型的操作一致

37不能重载的5个运算符是

.*(成员指针访问运算符)

::(域运算符)

.(成员访问符)

sizeof(长度运算符)

? :(三目条件运算符)

38 运算符重载的三种方式

普通函数,友元函数,类成员函数

39 流运算符为什么不能通过类的成员函数重载,一般怎么解决

因为通过类的成员函数重载必须运算符的第一个是自己,而对流运算符的重载要求是第一个是流对象。所以一般通过友元来解决

40 赋值运算符和拷贝构造函数的区别和联系?

相同:都是把一个对象赋值到另一个中去

不同:构造要创建新的对象

41 哪种情况要考虑调用析构函数。

当对象的生命周期结束时




各位亲 有时间可以去看看我的  “程序员淘宝店” http://jinjun1688.taobao.com/shop/view_shop.htm?tracelog=twddp 买时说明在我的博客看到有优惠哦 还有意外礼品赠送





    

原创粉丝点击