版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、选择题1、下列的各类函数中,不是类的成员函数( )。A) 构造函数 B) 析构函数 C) 友元函数 D) 拷贝初始化构造函数2、已知: int n=10;下列表示引用的方法中,正确的是( )。A) int &r; B) int &r=10; C) int &r=n; D) int *r=&n;3、下列关于析构函数的说法,正确的是( ) A) 其名与类名完全相同 B) 返回类型是void类型 C) 函数体中必须有delete语句 D) 无形参,不可重载4、已知函数原型:void fun(int a,int b=7,char z=*); 则下面函数调用中不合法的为( )。 A) fun(5);
2、 B) fun(5,8); C) fun(5,#); D) fun(0,0,*);5、类A是类B的友元,类B是类C的友元,则以下说法正确的是( )。A) 类B是类A的友元 B) 类C是类A的友元 C) 类A是类C的友元 D) 以上都不对6、关于对象成员的构造函数的调用顺序,说法正确的是( )。A)与它们在类中说明顺序相同 B)与析构函数的调用顺序相同C)与它们在成员初始化列表中给出的顺序相同D)以上说法都不对7、以下关于内联函数的说法正确的是( ) A)类的内联函数必须在类体外用关键字inline定义B)类的内联函数必须在类体内定义C)编译时将内联函数的目标代码插入每个调用该函数的地方D)运行
3、时将内联函数的目标代码插入每个调用该函数的地方8、在有同名全局变量和局部变量时,可以用( )提供对全局变量的访问。A)类运算符 B)域运算符 C) 重载 D)引用9、假定x为一个类,执行X a3,*p2;语句时会自动调用该类的构造函数( )次。A) 2 B) 3 C) 4 D)510、下列关于new运算符的描述中,错误的是( )。A) 可以new运算符来动态创建对象和对象数组 B) 使用new运算符创建的对象或对象数组,可以使用运算符delete删除C) 使用new运算符创建对象时要调用构造函数 D) 使用new运算符调用对象数组时不允许指定初始值11、下面对静态数据成员的描述中,正确的是(
4、) A)类的每个对象都有自己的静态数据成员B)静态数据成员是类的所有对象共享的数据C)类的不同对象有不同的静态数据成员值 D)静态数据成员不能通过类的对象调用12、如果一个类至少有一个纯虚函数,那么就称该类为( )。A)抽象类 B)纯基类 C)派生类 D)虚类13、若myclass类定义了拷贝构造函数和带一个整型参数的构造函数,还重载了赋值运算符,则语句 myclass obj = 100;将会( )A) 调用赋值运算符重载函数 B) 调用带一个整型参数的构造函数C) 调用拷贝构造函数 D) 引起编译错误14、下列哪一种情况不会调用拷贝构造函数 ( ) A)用派生类的对象去初始化基类对象时 B
5、)将类的一个对象赋值给该类的另一个对象时 C)函数的形参是类的对象,调用该函数将实参传给形参时 D)函数的返回值是类的对象,函数执行返回语句时15、下列关于this指针的说法正确的是( ) A)在类的非静态函数中this指针指向调用该函数的对象 B)this指针是指向类的函数成员的指针C)this指针是指向虚函数表的指针 D)this指针存在于每个函数之中16、运算符的重载是对已有的运算符赋予多重含义,以下说法正确的是( )。 A) 可以对基本类型(如int 类型)的数据,重新定义“+”运算符的含义 B) 可以改变一个已有运算符的优先级和操作数个数 C) 只能重载C+中已经有的运算符,不能定义
6、新运算符 D) C+中已经有的所有运算符都可以重载17、若一个类的构造函数为 A(int aa, int bb)a=aa+;b=a*bb+; ,则执行 Ax(4,5); 语句后,x.a 和 x.b 的值分别为 ( ) 。 A) 4 和 5 B) 5 和 4 C) 4 和 20 D) 20 和 5 18、在c+中下列声明之间有( )不同。 const int * ptr1=# int * const ptr2=# A)不能用ptr1改变常整数的内容,然而可以用ptr2改变它指向的整数的内容B) 不能用ptr2改变常整数的内容,然而可以用ptr1改变它指向的整数的内容B) 不能用p
7、tr2改变常整数的内容,也不能用ptr1改变它指向的整数的内容C) 没有不同19、建立派生类对象时,3种构造函数分别是C(成员对象的构造函数)、J(基类的构造函数)、D(派生类的构造函数),这3种构造函数的调用顺序为( )。 A) CJD B) JCD C) DJC D) DCJ20、在公有派生情况下,有关派生类对象和基类对象关系的叙述不正确的是( )。A) 派生类的对象可以赋给基类的对象 B) 派生类的对象可以初始化基类的引用 C) 派生类的对象可以直接访问基类中的成员 D) 派生类的对象的地址可以赋给指向基类的指针 二、写程序运行结果1、请写出以下程序的运行结果。#include usin
8、g namespace std; class A public: A (int i) x = i; void dispa () cout x “,”; private : int x; ; class B: public A public: B(int i) : A(i+10) x = i; void dispb() dispa(); cout x endl; private : int x; ; void main( ) B b(2); b.dispb( ); 2、请写出以下程序的运行结果。#includeusing namespace std;class MyClass public: M
9、yClass(int i=0) n=i; coutn; MyClass(const MyClass &x) n=x.n; coutn;MyClass& operator=(const MyClass &x) n=x.n; coutn; return *this; MyClass()cout#; private:int n; int main( ) MyClass obj1, obj2(2), obj3(obj1);obj1=obj2;return 0; 3、请写出以下程序的运行结果。#include class B; class A public: A(int i) a=i; friend i
10、nt Fun(A &f1, B &f2);private:int a;class B public: B(int i) b=i; friend int Fun(A &f1, B &f2); private: int b; ; int Fun(A &f1,B &f2) return (f1.a+f2.b)* (f1.a-f2.b); void main( ) A n1(10); B n2(8); coutFun(n1,n2)endl; 4、请写出以下程序的运行结果。#includeusing namespace std;class Complex private: double real, im
11、ag; static int total; public: Complex( double r=0.0, double i=0.0 ) real=r; imag=i; total+; int getTotal( ) return total; Complex() total-; ;int Complex:total=0; int main( ) Complex a(1,2),b,*p; p=new Complex10; couta.getTotal()endl; delete p; couta.getTotal()endl; return 0;三、程序填空题1、以下程序的功能是从键盘上输入若干
12、学生的学习成绩,统计并输出最高成绩和最低成绩,当输入为负数时结束输入。 #includeusing namespace std;int main() float x, max, min; cinx; max=min=x; while( ) if(xmax) max=x;if( ) min=x; cinx; cout max nmin= min endl; 2、以下程序计算两点之间的距离,请将之补充完整。#include#includeclass Point public: Point(int a=0, int b=0) x=a; y=b;int xcord( ) return x; int y
13、cord( ) return y; private: int x, y; class Distance public: Distance( &q1, Point &q2) double getdist( ) return ; private: Point p1, p2; double dist; ; Distance:Distance(Point &q1, Point &q2):p1(q1), p2(q2) double x=p1.xcord( )-p2.xcord( ); double y=p1.ycord( )-p2.ycord(); dist=sqrt( ); void main( )
14、Point p(0,0), q(1,1); Distance dist(p, q); cout “两点之间的距离是:” dist.getdist( ) endl; 3、以下程序实现复数类的“+”号运算符和“-”号运算符的重载,请将之补充完整。#include using namespace std;class Complexpublic: Complex( )real=0;imag=0; Complex(double r,double i)real=r; imag=i;friend Complex operator + (Complex &c1, Complex &c2);Complex op
15、erator - (Complex &c) void display( ); private: double real, imag; ;Complex operator +(Complex &c1, Complex &c2) return Complex( ); Complex operator (Complex &c) return Complex( ); void Complex:display( ) cout (real, imagi) =0 xmin2、 Point dist y*y-x*x3、 c1.real+c2.real, c1.imag+c2.imag Complex: rea
16、l-c.real, imag-c.imag4、 virtual 3.14*r*r四、编程题1、定义一个时间类,含有私有成员:时、分、秒,用构造函数给私有成员赋值,再定义一个日期类,含有私有成员:年、月、日,用构造函数给私有成员赋值,再定义一个子类,继承日期和时间类,最后输出日期和时间,初始值自拟。#include using namespace std; class time private:int h,m,s; public: time(int x,int y,int z) h=x;m=y;s=z; void print1() couth:m:sendl; ; class date priv
17、ate:int y,m,d; public: date(int a,int b,int c) y=a;m=b;d=c; void print2() couty-m-dendl; ; class datetime:public date, public time public: datetime(int e,int f,int g,int i,int j,int k):date(e,f,g),time(i,j,k) ; void main() datetime dt(2013,11,18,10,11,12); dt.print2(); dt.print1(); 2、声明一个函数模版,将数组内容从小到大排列并打印出来,并写出调用此函数模版的完整程序,调用时,数组的类型可以是整型、字符型或双精度型。#include #includeusing namespace std;template void bubble(stype * item, int count) int i,j; sty
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度网络安全服务协议书
- 2024年度版权使用与授权合同
- 2024供水、供电合同范文
- 2024年建筑工程股权转让合同样本
- 2024城市轨道交通安检设备采购合同
- 文书模板-产品委外开发合作协议书
- 产业新城课件教学课件
- 2024年度企业品牌形象设计及VI手册整编合同
- 2024年度版权购买与授权合同具体内容
- 2024年废物回收居间买卖合同
- 外贸业务与国际市场培训课件
- 信创医疗工作总结
- 教师教育教学质量提升方案
- 灭火器的规格与使用培训
- 2024《中央企业安全生产治本攻坚三年行动方案(2024-2026年)》
- 纪录片《园林》解说词
- 建筑专题摄影培训课件
- 《民间文学导论》课件
- 《输血查对制度》课件
- 拳击赛策划方案
- 分离性障碍教学演示课件
评论
0/150
提交评论