考试首页 | 考试用书 | 培训课程 | 模拟考场 | 考试论坛  
全国  |             |          |          |          |          |         
  当前位置:计算机等级 > 二级考试 > C++语言程序设计 > C++模拟试题 > 文章内容
  

全国计算机二级考试C++考前押密试卷(1)

中华IT学院   【 】  [ 2017年8月9日 ]

  21.C++语言中关于构造函数的说法正确的是(  )。

  A.构造函数的函数名不必和类名相同

  B.构造函数只能有一个

  C.每个类必定有构造函数

  D.构造函数必有返回值

  22.(  )既可重载为一元运算符,又可重载为二元运算符。

  A.“*”B.“=”

  C.“=”和“*”D.“*”和“*++”

  23.类MyClass的定义如下:

  classMvClass

  {

  public:

  MyClass(){value=0;}

  SetVariable(inti){value=i;}

  private:

  intvalue;

  };

  则对下列语句序列正确的描述是(  )。

  A.语句p=&my;是把对象my赋值给指针变量P

  B.语句MyClass*P,my;会调用两次类MyClass的构造函数

  C.对语句*P.SetVariable(5)的调用是正确的

  D.语句p->SetVariable(5)与语句my.SetVariable(5)等价

  24.有如下程序:

  #included

  usingnamespacestd;

  classTestClass

  {private:

  intX,y;

  public:

  TestClass(inti,intj)

  {x=i;

  y=j;}

  voidprint()

  {cout<<"printl"<  voidprint()const

  {cout<<"print2"<  intmain()

  {constTestClassa(1,2);

  a.print();

  return0;}

  该程序运行后的输出结果是(  )。

  A.printl

  B.print2

  C.printlprint2

  D.程序编译时出错

  25.有如下程序:

  #included

  usingnamespacestd;

  classTestClass

  {inta;

  pubIic:

  TestClass(intx){a=x;}

  voidshow(){cout<  classTestClassl:publicTestClass

  {intb;

  public:

  TestClassl(inti):TestClass(i+1),b(i){}

  voidshow(){cout<  intmain()

  {TestClassb(5),*P;

  TestClassld(1):

  p=&d;

  p->show();

  return0;}

  该程序运行后的打印结果是(  )。

  A.5

  B.1

  C.0

  D.2

  26.下面程序输出的结果为(  )。

  #include"iostream.h"

  classA

  {public:

  A(){cOUt<<"CLASSA"<  ~A(){}};

  ClaSSB:publicA

  {public:

  B(){cout<<"CLASSB"<  ~B(){}};

  voidmain()

  {A*P;

  P=newB:

  B*q:

  q=newB;}

  A.CLASSA

  B.CLASSA

  CLASSBCLASSB

  CLASSB

  C.CLASSA

  D.CLASSA

  CLASSBCLASSB

  CLASSACLASSB

  CLASSBCLASSB

  27.在下面的运算符重载函数的原型中,错误的是(  )。

  A.Volumeoperator-(double,double);

  B.doubleVolume::operator-(double);

  C.VolumeVolume::operator-(Volume);

  D.Volumeoperator-(Volume);

  28.有如下类声明:

  classXA{

  intx:

  public:

  XA(intn){x=n;}

  };

  classXB:publicXA{

  inty;

  oublic:

  XB(inta,intb);

  };

  在构造函数XB的下列定义中,正确的是(  )。

  A.XB::XB(inta,intb):x(a),y(b){}

  B.XB::XB(inta,intb):XA(a),y(b){}

  C.XB::XB(inta,intb):x(a),XB(b){}

  D.XB::XB(inta,intb):XA(a),XB(b){}

  29.下面类的定义,有(  )处错误。

  classMyClass

  {public:

  voidMyClass();

  ~MyClass(intvahle);

  private:

  inti=0;};

  A.1B.2

  C.3D.4

  30.有以下程序:

  classDate

  {public:

  Date(inty,intm,intd);

  {year=Y;

  month=m;

  day=d;}

  Date(inty=2000)

  {year=y;

  month=10;

  day=1;}

  Date(Date&d)

  {year=d.year;

  month=d.month;

  day=d.day;}

  voidprint()

  {cout<  day<  private:

  intyear,month,day;};

  Datefun(Dated)

  {Datetemp;

  temp=d;

  returntemp;}

  intmain()

  {Datedatel(2000,1,1),date2(0,0,O);

  Datedate3(date1);

  date2=fun(date3);

  return0;}

  程序执行时,Date类的复制构造函数被调用的次数是(  )。

  A.2

  B.3

  C.4

  D.5

分享到:
本文纠错】【告诉好友】【打印此文】【返回顶部
将考试网添加到收藏夹 | 每次上网自动访问考试网 | 复制本页地址,传给QQ/MSN上的好友 | 申请链接 | 意见留言 TOP
关于本站  网站声明  广告服务  联系方式  站内导航  考试论坛
Copyright © 2007-2013 中华考试网(Examw.com) All Rights Reserved