欢迎来到天天文库
浏览记录
ID:15461177
大小:82.00 KB
页数:44页
时间:2018-08-03
《全面整理的c++面试题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、全面整理的C++面试题C++面试题1.是不是一个父类写了一个virtual函数,如果子类覆盖它的函数不加virtual,也能实现多态?virtual修饰符会被隐形继承的。private也被集成,只事派生类没有访问权限而已virtual可加可不加子类的空间里有父类的所有变量(static除外)同一个函数只存在一个实体(inline除外)子类覆盖它的函数不加virtual,也能实现多态。在子类的空间里,有父类的私有变量。私有变量不能直接访问。---------------------------------
2、-----------------------------------------2.输入一个字符串,将其逆序后输出。(使用C++,不建议用伪码)#includeusingnamespacestd;voidmain(){chara[50];memset(a,0,sizeof(a));inti=0,j;chart;cin.getline(a,50,'/n');for(i=0,j=strlen(a)-1;i3、j]=t;}cout<>str;str.replace;cout<4、在的操作系统中有非常多的程序运行着,内存中不能够完全放下,所以引出了虚拟内存的概念。把哪些不常用的程序片断就放入虚拟内存,当需要用到它的时候在load入主存(物理内存)中。这个就是内存管理所要做的事。内存管理还有另外一件事需要做:计算程序片段在主存中的物理位置,以便CPU调度。内存管理有块式管理,页式管理,段式和段页式管理。现在常用段页式管理块式管理:把主存分为一大块、一大块的,当所需的程序片断不在主存时就分配一块主存空间,把程序片断load入主存,就算所需的程序片度只有几个字节也只能把这一块分配给它。5、这样会造成很大的浪费,平均浪费了50%的内存空间,但时易于管理。页式管理:把主存分为一页一页的,每一页的空间要比一块一块的空间小很多,显然这种方法的空间利用率要比块式管理高很多。段式管理:把主存分为一段一段的,每一段的空间又要比一页一页的空间小很多,这种方法在空间利用率上又比页式管理高很多,但是也有另外一个缺点。一个程序片断可能会被分为几十段,这样很多时间就会被浪费在计算每一段的物理地址上(计算机最耗时间的大家都知道是I/O吧)。段页式管理:结合了段式管理和页式管理的优点。把主存分为若干页,每一页又分为6、若干段。好处就很明显,不用我多说了吧。各种内存管理都有它自己的方法来计算出程序片断在主存中的物理地址,其实都很相似。这只是一个大概而已,不足以说明内存管理的皮毛。无论哪一本操作系统书上都有详细的讲解--------------------------------------------------------------------------4.#include"stdafx.h"#defineSQR(X)X*Xintmain(intargc,char*argv[]){inta=10;intk=2;i7、ntm=1;a/=SQR(k+m)/SQR(k+m);printf("%d/n",a);return0;}这道题目的结果是什么啊?define只是定义而已,在编择时只是简单代换X*X而已,并不经过算术法则的a/=(k+m)*(k+m)/(k+m)*(k+m);=>a/=(k+m)*1*(k+m);=>a=a/9;=>a=1;--------------------------------------------------------------------------5.const符号常量;(1)co8、nstchar*p(2)charconst*p(3)char*constp说明上面三种描述的区别;如果const位于星号的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;如果const位于星号的右侧,const就是修饰指针本身,即指针本身是常量。(1)constchar*p一个指向char类型的const对象指针,p不是常量,我们可以修改p的值,使其指向不同的char,但是不能改变它指向非char对象,如:constcha
3、j]=t;}cout<>str;str.replace;cout<4、在的操作系统中有非常多的程序运行着,内存中不能够完全放下,所以引出了虚拟内存的概念。把哪些不常用的程序片断就放入虚拟内存,当需要用到它的时候在load入主存(物理内存)中。这个就是内存管理所要做的事。内存管理还有另外一件事需要做:计算程序片段在主存中的物理位置,以便CPU调度。内存管理有块式管理,页式管理,段式和段页式管理。现在常用段页式管理块式管理:把主存分为一大块、一大块的,当所需的程序片断不在主存时就分配一块主存空间,把程序片断load入主存,就算所需的程序片度只有几个字节也只能把这一块分配给它。5、这样会造成很大的浪费,平均浪费了50%的内存空间,但时易于管理。页式管理:把主存分为一页一页的,每一页的空间要比一块一块的空间小很多,显然这种方法的空间利用率要比块式管理高很多。段式管理:把主存分为一段一段的,每一段的空间又要比一页一页的空间小很多,这种方法在空间利用率上又比页式管理高很多,但是也有另外一个缺点。一个程序片断可能会被分为几十段,这样很多时间就会被浪费在计算每一段的物理地址上(计算机最耗时间的大家都知道是I/O吧)。段页式管理:结合了段式管理和页式管理的优点。把主存分为若干页,每一页又分为6、若干段。好处就很明显,不用我多说了吧。各种内存管理都有它自己的方法来计算出程序片断在主存中的物理地址,其实都很相似。这只是一个大概而已,不足以说明内存管理的皮毛。无论哪一本操作系统书上都有详细的讲解--------------------------------------------------------------------------4.#include"stdafx.h"#defineSQR(X)X*Xintmain(intargc,char*argv[]){inta=10;intk=2;i7、ntm=1;a/=SQR(k+m)/SQR(k+m);printf("%d/n",a);return0;}这道题目的结果是什么啊?define只是定义而已,在编择时只是简单代换X*X而已,并不经过算术法则的a/=(k+m)*(k+m)/(k+m)*(k+m);=>a/=(k+m)*1*(k+m);=>a=a/9;=>a=1;--------------------------------------------------------------------------5.const符号常量;(1)co8、nstchar*p(2)charconst*p(3)char*constp说明上面三种描述的区别;如果const位于星号的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;如果const位于星号的右侧,const就是修饰指针本身,即指针本身是常量。(1)constchar*p一个指向char类型的const对象指针,p不是常量,我们可以修改p的值,使其指向不同的char,但是不能改变它指向非char对象,如:constcha
4、在的操作系统中有非常多的程序运行着,内存中不能够完全放下,所以引出了虚拟内存的概念。把哪些不常用的程序片断就放入虚拟内存,当需要用到它的时候在load入主存(物理内存)中。这个就是内存管理所要做的事。内存管理还有另外一件事需要做:计算程序片段在主存中的物理位置,以便CPU调度。内存管理有块式管理,页式管理,段式和段页式管理。现在常用段页式管理块式管理:把主存分为一大块、一大块的,当所需的程序片断不在主存时就分配一块主存空间,把程序片断load入主存,就算所需的程序片度只有几个字节也只能把这一块分配给它。
5、这样会造成很大的浪费,平均浪费了50%的内存空间,但时易于管理。页式管理:把主存分为一页一页的,每一页的空间要比一块一块的空间小很多,显然这种方法的空间利用率要比块式管理高很多。段式管理:把主存分为一段一段的,每一段的空间又要比一页一页的空间小很多,这种方法在空间利用率上又比页式管理高很多,但是也有另外一个缺点。一个程序片断可能会被分为几十段,这样很多时间就会被浪费在计算每一段的物理地址上(计算机最耗时间的大家都知道是I/O吧)。段页式管理:结合了段式管理和页式管理的优点。把主存分为若干页,每一页又分为
6、若干段。好处就很明显,不用我多说了吧。各种内存管理都有它自己的方法来计算出程序片断在主存中的物理地址,其实都很相似。这只是一个大概而已,不足以说明内存管理的皮毛。无论哪一本操作系统书上都有详细的讲解--------------------------------------------------------------------------4.#include"stdafx.h"#defineSQR(X)X*Xintmain(intargc,char*argv[]){inta=10;intk=2;i
7、ntm=1;a/=SQR(k+m)/SQR(k+m);printf("%d/n",a);return0;}这道题目的结果是什么啊?define只是定义而已,在编择时只是简单代换X*X而已,并不经过算术法则的a/=(k+m)*(k+m)/(k+m)*(k+m);=>a/=(k+m)*1*(k+m);=>a=a/9;=>a=1;--------------------------------------------------------------------------5.const符号常量;(1)co
8、nstchar*p(2)charconst*p(3)char*constp说明上面三种描述的区别;如果const位于星号的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;如果const位于星号的右侧,const就是修饰指针本身,即指针本身是常量。(1)constchar*p一个指向char类型的const对象指针,p不是常量,我们可以修改p的值,使其指向不同的char,但是不能改变它指向非char对象,如:constcha
此文档下载收益归作者所有