总结---3

Email relay 和Email access分别用了什么协议?
答:SMTP,POP3

1:多态是如何实现绑定的?

 

多态的绑定可以分为运行是多态和编译时多态

● 编译时的多态性

编译时的多态性是通过重载来实现的。对于非虚的成员来说,系统在编译时,根据传递的参数、返回的类型等信息决定实现何种操作。

● 运行时的多态性

运行时的多态性就是指直到系统运行时,才根据实际情况决定实现何种操作。C#中,运行时的多态性通过虚成员实现。

编译时的多态性为我们提供了运行速度快的特点,而运行时的多态性则带来了高度灵活和抽象的特点。

 

2:析构函数是虚函数的优点是什么?

这样做是为了当用一个基类的指针删除一个派生类的对象时,派生类的析构函数会被调用。

当然,并不是要把所有类的析构函数都写成虚函数。因为当类里面有虚函数的时候,编译器会给类添加一个虚函数表,里面来存放虚函数指针,这样就会增加类的存储空间。所以,只有当一个类被用来作为基类的时候,才把析构函数写成虚函数

 

3:指针和引用有什么区别?

(1)引用在创建时必须初始化,指针可以不初始化,引用不可以为NULL,指针可以。

(2)不存在指向空值的引用,但是存在指向空值的指针

(3)引用初始化后不能被改变,指针可以改变所指的对象.

4.OSI的七层网络结构和TCP/IP的五层结构。

答:应用层:为应用程序提供服务。

表示层:处理在两个通信系统中交换信息的表示方式。

会话层:负责维护两个结点间会话连接的建立、管理和终止,以及数据交换。

传输层:向用户提供可靠的端到端服务。UDP和TCP协议。

网络层:通过路由选择算法为分组通过通信子网选择最适当的路径,以及实现拥塞控制、网络互联等功能。数据传输单元是分组。IP地址,路由器,IP协议。

数据链路层:在物理层提供的服务基础上,数据链路层在通信的实体间建立数据链路连接,传输一帧为单位的数据包(,并采用差错控制与流量控制方法,使有差错的物理线路变成无差错的数据链路。)交换机,网桥

物理层:传输比特流。传输单元是比特。调制解调器。中继器

5.专用多态是指( A )
A.重载多态和强制多态
B.强制多态和包含多态
C.包含多态和参数多态
D.参数多态和重载多态
6.通用多态是指( C )
A.重载多态和强制多态
B.强制多态和包含多态
C.包含多态和参数多态
D.参数多态和重载多态
7.下面各项中属于不可重载的一组运算符是( C )
A.+、—、*、/
B.[ ]、()
C. ::、.、?:、sizeof、.*
D.++、——

8.在C++中,数组类型属于( B )
A.基本数据类型
B.自定义数据类型
C.类类型
D.结构体类型

11.关于虚基类,下面说法正确的是( D )
A.带有虚函数的类称为虚基类
B.带有纯虚函数的类称为虚基类
C.虚基类不能实例化
D.虚基类可以用来解决二义性问题
12.关于析构函数,下面说法不正确的是( B )
A.析构函数用来完成对象被删除前的一些清理工作
B.析构函数可以声明为重载函数
C.析构函数可以声明为虚函数
D.析构函数在对象的生存期即将结束时被系统自动调用
13.关于虚函数,下列说法不正确的是( C )
A.虚函数是动态联编的基础
B.虚函数的定义只能出现在类定义中的函数原形声明中
C.类的成员函数均可声明为虚函数
D.虚函数是用virtual关键字声明的非静态成员函数
14.关于抽象类,下列说法不正确的是( B )
A.抽象类不能实例化
B.带有虚函数的类称为抽象类
C.带有纯虚函数的类称为抽象类
D.抽象类的作用是为一个类族建立一个公共接口

23.下面选项中,不是类的成员函数的为( C )
A.构造函数
B.析构函数
C.友元函数
D.拷贝构造函数

33.在C++中,要实现动态联编,必须使用( C )调用虚函数
A.类名
B.对象名
C.基类指针
D.派生类指针

Windows程序的入口是哪里?写出Windows消息机制的流程。
答:
Windows程序的入口是WinMain函数
消息机制:系统将会维护一个或多个消息队列,所有产生的消息都会被放入或是插入队列中。系统会在队列中取出每一条消息,根据消息的接收句柄而将该消息发送给拥有该窗口的程序的消息循环。每一个运行的程序都有自己的消息循环,在循环中得到属于自己的消息并根据接收窗口的句柄调用相应的窗口过程。而在没有消息时消息循环就将控制权交给系统。

内联函数在编译时是否做参数类型检查?
答:做类型检查,因为内联函数就是在程序编译时,编译器将程序中出现的内联函数的调用表达式用内联函数的函数体来代替。

枚举与#define 宏的区别

1)#define 宏常量是在预编译阶段进行简单替换。枚举常量则是在编译的时候确定其值。
2)一般在编译器里,可以调试枚举常量,但是不能调试宏常量。
3)枚举可以一次定义大量相关的常量,而#define 宏一次只能定义一个。

posted on 2013-10-10 16:15  猿人谷  阅读(491)  评论(0编辑  收藏  举报