- 博客(111)
- 收藏
- 关注
转载 【面向对象程序设计常见面试题】赋值兼容(xx)
1、派生类对象可以赋值给基类对象Base b;Derived d;b=d;2、派生类对象可以初始化基类对象的引用Base b;Derived d;Base &br=d;3、派生类对象的地址可以赋给基类对象的指针Base *pb;Derived d;pb=&d;4、如果函数的形参是基类对象或基类对象的引用,在调用函数时可以用派生类对象作为实参
2014-03-30 21:13:01 857
转载 【面向对象程序设计常见面试题】虚基类的几点说明(xx)
1、如果虚基类中定义有带形参的构造函数,并且没有定义默认形式的构造函数,则整个继承结构,所有直接或间接的派生类都必须在构造函数的成员初始化列表中列出对虚基类构造函数的调用,以初始化在虚基类中定义的数据成员2、建立一个对象时,如果这个对象中含有从虚基类继承的成员,则虚基类的成员是由最远派生类的构造函数通过调用虚基类的构造函数进行初始化的。该派生类的其他基类对虚基类构造函数的调用可
2014-03-30 21:04:50 1624
转载 【面向对象常见面试题】访问声明的几点说明(xx)
1、数据成员也可以使用访问声明2、访问声明中只含不带类型和参数的函数名或变量名void A::show;A::show();void A::show();3、访问声明不能改变成员在基类中的访问属性class A{public: int x1;protected: int x2;private: int x3; };class B:
2014-03-30 20:09:34 952
转载 【面向对象程序设计常见面试题】派生中构造函数的几点说明(xx)
1、当基类构造函数不带参数时,派生类不一定需要定义构造函数;然而当基类的构造函数哪怕只带一个参数,它所有派生类都必须定义构造函数2、基类使用默认的构造函数或不带参数的构造函数,则在派生类中定义构造函数时可忽略:“基类构造函数名(参数)”3、如果派生类的基类也是一个派生类,每个派生类只需要负责其直接基类数据成员的初始化#include using namespace std
2014-03-30 19:46:35 992
转载 【面向程序设计常见面试题】纯虚函数和抽象类(已阅)
1、纯虚函数声明:virtual 函数类型 函数名(参数表) = 0;纯虚函数的作用是在基类中为其派生类保留一个函数的名字,以便派生类根据需要对它进行重新定义。纯虚函数没有函数体,它后面的=0并不表示函数的返回值为0,只是形式上的作用,告诉编译系统,这是纯虚函数。纯虚函数没有函数功能,也不能被调用。2、抽象类(至少有一个纯函数)1)、不能建立抽象对象2)、不能从具体类派
2014-03-30 16:13:09 908
转载 【面向对象程序设计常见面试题】多继承与虚函数之间的关系(已阅)
#include using namespace std;class A1{public: virtual void fun(){ cout<<"A1"<<endl; }};class A2{public: void fun(){ cout<<"A2"<<endl; }};class B:public A1,pu
2014-03-30 16:03:50 732
转载 【面向对象程序设计常见面试题】虚析构函数(已阅)
1、无虚析构函数#include using namespace std;class CParent{public: CParent(){} ~CParent(){ cout<<"调用基类的析构函数"<<endl; }};class CChild:public CParent{public: CChild(){}
2014-03-30 15:34:29 812
转载 【面向对象程序设计常见面试题】虚函数的定义的几点说明(已阅)
1、通过定义虚函数来使用多态机制,派生类必须从它的基类公有派生2、必须首先在基类中定于虚函数3、在派生类对基类中声明的虚函数进行重新定义时,关键字virtual可以写也不可以不写4、为体现虚函数的特性,建议通过基类指针访问虚函数5、一个虚函数无论被公有继承多少次,它仍然保持虚函数的特性6、虚函数必须是其所在类的成员函数、而不能是友元函数,也不能是静态成员函数7、内联函数不能
2014-03-30 15:26:06 690
原创 【gcc】gcc常用选项
1、-c选项该选项表示编译、汇编指定的源文件,但是不进行链接。使用-c选项可以将每个源文件编译成对应的目标文件gcc - c test1.c test2.c test3.c-o test2、-s选项该选项将C语言的源文件编译称为汇编语言,但是并不汇编该程序gcc -c test.ccat test.s3、-E选项该选项将C语言源文件进行预处理,但是并不
2014-03-30 11:46:56 813
原创 【gcc】gcc的编译流程
gcc编译器在编译一个C语言程序时,需要经过4步1、将C语言源程序预处理,生成.i文件2、预处理后的.i文件编译成为汇编语言,生成.s文件3、将汇编语言文件经过汇编,生成目标文件.o文件4、将各个模块的.o文件链接起来生成一个可执行程序文件
2014-03-30 11:29:59 631
原创 【gcc】库
一、静态链接库是在可执行程序运行前就已经加入到执行码中,成为执行程序的一部分。linux环境下的静态目标文件一般以.a做为目标文件的扩展名。静态链接库的优点在于使用简单,编译快速。静态链接库在应用程序生成时,已经编译成为可重定位的目标文件,因此可以不必再编译,节省编译时间,以最短的时间生成可执行程序。1、创建静态库gcc -c static_lib.car rcs sta
2014-03-30 11:21:45 604
转载 【存储管理】请求淘汰换页算法最优淘汰算法(optimal replacement algorithm,OPT)
一、算法思想淘汰页面将是以后永不使用的,或许是在最长(未来)时间内不再被使用的页面二、算法评价该算法保证了获得最低的缺页率,但是该算法无法实现。但是可以利用该算法去评价其他算法三、算法实例
2014-03-29 23:43:51 3001
转载 【存储管理】请求淘汰换页算法先进先出算法(first input first output,FIFO)
一、算法思想总是淘汰最先进入内存的页面,即选择在内存停留时间最长的页面予以淘汰二、算法题目
2014-03-29 23:29:51 1855
转载 【计算机网络常见面试题】IP 子网经典练习题
1.网段地址154.27.0.0的网络,若不做子网划分,能支持( )台主机A.254 B.1024 C.65,536 D.655342. 某公司申请到一个C类IP地址,但要连接9个的子公司,最大的一个子公司有12台计算机,每个子公司在一个网段中,则子网掩码应设为( )。A.255.254.255.240 B.255.255.255.19
2014-03-29 17:09:00 6249
转载 【计算机网络常见面试题】ip及掩码计算题
1. 192.168.1.0/24 使用掩码255.255.255.240 划分子网,其可用子网数为(),每个子网内可用主机地址数为()A. 14 14 B. 16 14 C. 254 6 D. 14 622. 子网掩码为255.255.0.0 ,下列哪个 IP 地址不在同一网段中()A. 172.25.15.201 B. 172.25
2014-03-29 17:07:02 9104
转载 【计算机网络常见面试题】网络规划问题
一个公司有530台电脑,组成一个对等局域网,子网掩码设多少最合适? 首先,无疑,530台电脑用B类IP最合适(A类不用说了,太多,C类又不够,肯定是B类),但是B类默认的子网掩码是255.255.0.0,可以容纳6万台电脑,显然不太合适,那子网掩码设多少合适呢?我们先来列个公式。 2的m次方=560 首先,我们确定2一定是大于8次方的,因为我们知道2的8次方是256,也就是C类IP
2014-03-29 17:04:34 1859
转载 【计算机网络常见面试题】ip地址同一网段计算问题
188.188.0.111,188.188.5.222,子网掩码都设为255.255.254.0,在同一网段吗? 先将这些转换成二进制 188.188.0.111 10111100.10111100.00000000.01101111 188.188.5.222 10111100.10111100.00000101.11011010 255.255.254.0 11111111
2014-03-29 17:00:49 1537
转载 【计算机网络常见面试题】超网的IP地址斜线记法
/比如IP地址:200.16.23.0/20表示这个32位长度的IP地址中,其中前20位是网络前缀,后12位是网络号
2014-03-29 16:58:34 1791
转载 【计算机网络常见面试题】特殊地址形式
1、直接广播地址A\B\C类地址的主机号全为12、受限广播地址网络号和主机号全为1,只限制在该网络的内部3、这个网络的特定主机地址IP地址的网络号全为0,主机号为确定的值4、回送地址127.0.0.0TCP/IP协议规定:含网络号为127的分组不能出现在任何网络中;主机和路由器不能为该地址广播任何寻址信息
2014-03-29 16:53:39 1019
转载 【计算机网络常见面试题】IP地址一道计算题
已知172.31.128.255/18,试计算:1、子网数目,2、网络号,3、主机号,4、广播地址,5、可分配IP的起止范围1、算子网数目首先将/18换成为我们习惯的表示法:11111111.11111111.11000000.00000000转为十进制就是255.255.192.0,可以看到这个掩码的左边两节和B类默认掩码是一致的,所以这个掩码是在B类
2014-03-29 16:36:51 6310
转载 【面向对象程序设计常见面试题】函数模板与类模板有什么区别?(44)
函数模板的实例化是由编译程序在处理函数调用时自动完成的,而类模板的实例化必须由程序员在程序中显式地指定。1、函数模板声明template 返回类型 函数名(模板参数){函数体}template 返回类型 函数名(模板参数){函数体}使用函数名(模板实参表)模板函数可以重载函数模板与同名的非模板函数可以重载,但是先调用非模板的函数,再调用模板函
2014-03-28 21:00:10 1028
转载 【面向对象程序设计常见面试题】派生新类的声明(xx)
class 派生类名 :[继承方式] 基类名{ 派生类新增的数据成员和成员函数}继承方式:私有继承、保护继承、公有继承派生类可以完成的功能:1、增加新数据成员2、增加新的成员函数3、对基类成员在派生类中的访问属性4、可以改变基类成员在派生类中的访问属性
2014-03-28 19:47:44 520
转载 【面向对象程序设计常见面试题】什么叫智能指针?
当一个类中,存在一个指向另一个类对象的指针时,对指针运算符进行重载,那么当前类对象可以通过指针像调用自身成员一样调用另一个类的成员。
2014-03-28 19:43:18 601
转载 【面向对象程序设计常见面试题】什么叫静态关联,什么叫动态关联
在多态中,如果程序在编译阶段就能确定实际执行动作,则称静态关联,如果等到程序运行才能确定叫动态关联。
2014-03-28 19:33:12 1103
转载 【C++程序设计常见面试题】说出字符常量和字符串常量的区别,并使用运算符sizeof计算有什么不用?(00)
字符常量是指单个字符,字符串常量以‘\0’结束,使用运算符sizeof计算比字符常量计算结果多占一字节的存储空间。
2014-03-28 17:40:33 1236
转载 【C++程序设计常见面试题】strcpy()和memcpy()的区别?(00)
strcpy()和memcpy()都可以用来拷贝字符串,strcpy()拷贝以’\0’结束,但memcpy()必须指定拷贝的长度。
2014-03-28 17:15:29 679
转载 【面向对象程序设计常见面试题】多态的作用?(已阅)
主要是两个:1. 隐藏实现细节,使得代码能够模块化;扩展代码模块,实现代码重用;2. 接口重用:为了类在继承和派生的时候,保证使用家族中任一类的实例的某一属性时的正确调用
2014-03-28 08:07:29 796
转载 【面向对象程序设计常见面试题】类中成员变量怎么进行初始化?(11)
注意不能在类声明中给数据成员赋值,只有在类的对象定义之后才能给数据成员赋初值可以通过构造函数的初始化列表或构造函数的函数体实现。初始化列表:Class A{ Int I,j;Public: A(int a):i(a),j(a){}}
2014-03-28 08:04:16 590
转载 【面向对象程序设计常见面试题】虚函数是怎么实现的?(已阅)
简单说来使用了虚函数表.虚函数的作用是实现动态联编,(联编工作要在程序运行时进行,这种在程序运行时进行联编工作被称为动态联编。)也就是在程序的运行阶段动态地选择合适的成员函数,在定义了虚函数后,可以在基类的派生类中对虚函数重新定义,在派生类中重新定义的函数应与虚函数具有相同的形参个数和形参类型。以实现统一的接口。注意以下程序的输出结果:1、无虚函数,即静态编
2014-03-28 00:19:31 927
转载 【面向对象程序设计常见面试题】如何定义和实现一个类的成员函数为回调函数?
所谓的回调函数,就是预先在系统的对函数进行注册,让系统知道这个函数的存在,以后,当某个事件发生时,再调用这个函数对事件进行响应。定义一个类的成员函数时在该函数前加CALLBACK即将其定义为回调函数,函数的实现和普通成员函数没有区别.
2014-03-28 00:18:38 879
转载 【面向对象程序设计常见面试题】对类的成员的访问属性有什么?(11)
public:公有的成员不但可以被类中成员函数访问,还可以在类的外部,通过类对象访问protected:只能在类中成员函数访问,以及继承类中私有。不能在类的外部使用private:只能被类中成员函数访问,不能在类的外部,通过类的对象进行访问
2014-03-28 00:12:49 1227
转载 【面向对象程序设计常见面试题】对对象成员进行初始化的次序是什么?(11)
它的次序完全不受它们在初始化表中次序的影响,只有成员对象在类中声明的次序来决定的。#include using namespace std;class D{public: D(int i):mem2(i),mem1(mem2+1) { cout<<mem1<<endl; cout<<mem2<<endl; }private:
2014-03-28 00:09:53 751
转载 【面向对象程序设计常见面试题】赋值运算符和拷贝构造函数的区别与联系?(3)
相同点:都是将一个对象copy到另一个中去。不同点:拷贝构造函数涉及到要新建立一个对象。
2014-03-28 00:07:08 455
转载 【面向对象程序设计常见面试题】流运算符为什么不能通过类的成员函数重载?一般怎么解决?(7)
因为通过类的成员函数重载必须是运算符的第一个是自己,而对流运算的重载要求第一个参数是流对象。一般通过友元来解决。
2014-03-28 00:05:06 780
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人