求救~~~~考试ing~~~还有半小时大家帮帮忙 感激不尽
14题出下列程序的输出结果是
#include<iostream.h>
class base
{
int n;
public:
base(){};
base (int a)
{
cout << "constructing base class " ;
n=a;
cout << "n=" << n ;
}
~base() { cout << "destructing base class " ; }
};
class subs : public base
{
int m;
public:
subs(int a, int b) : base(a)
{
cout << "constructing sub class " ;
m=b;
cout << "m=" << m ;
}
subs() { cout << "destructing sub class " ; }
};
void main ()
{
subs s(1,2);
}
1.1)constructing base class n=1constructing sub class m=2
2.2)constructing sub class m=2constructing base class n=1
3.3)constructing base class n=1
4.4)constructing sub class m=2
请选择序号:
第15题
下列程序的输出结果
#include <iostream.h>
class sub
{
public:
sub(int i){k=i;cout << "class sub=" << i << ' ';};
private:
int k;
};
class m
{
public:
m(int a,int b):s(b){cout << "class m=" << a;};
private:
sub s;
};
void main()
{
m ms(11,132);
}
1.class m=11class sub=132
2.class sub=132class m=11
3.class m=11 class sub=132
4.class sub=132 class m=11
请选择序号:
第16题
给出下列程序的输出结果
#include <iostream.h>
class Sample
{
protected:
int x;
public:
Sample() { x=0; }
Sample(int val) { x=val; }
void operator++(int k) { x++; }
};
class Derived:public Sample
{
int y;
public:
Derived():Sample(){ y=0; }
Derived(int val1,int val2):Sample(val1){ y=val2; }
void operator--(int k){ x--;y--;}
void disp()
{cout << "x=" << x << ' ' << "y=" << y << endl;}
};
void main ()
{
Derived d(3,5);
d++;
d--;
d--;
d.disp();
cin.get();
}
输出结果是:
第17题
下面程序的运行结果是
#include <iostream.h>
#define N 100
class CStack
{
public:
CStack() {top=0;cout<<"Hello ";}
~CStack() {cout<<"Bye";}
void push(int i);
int pop();
private:
int stack[N];
int top;
};
void CStack::push(int i)
{
if (top==N){
cout<<"Overflow";
return;
}
else{
top++;
stack[top]=i;
}
}
int CStack::pop( )
{
int temp;
if (top==0){
cout<<"Underflow";
return 0;
}
else{
temp=stack[top];
top--;
return temp;
}
}
void main()
{
CStack *ptr=new CStack;
ptr->push (10);
ptr->push(50);
cout <<ptr->pop( )<<" ";
cout << "OK!"<<endl;
}
运行结果
第18题
在基类和派生类中,成员函数的覆盖是指的是派生类成员函数
与在基类被覆盖的成员
1.函数名、参数个数、参数类型和返回值类型均相同 。
2.同1但返回值可以不同
3.只要函数名相同就可以了
4.函数类型也要相同
请选择序号:
第19题
C++中类的复合代表了类之间的什么关系
1.知道关系
2.使用关系
3.继承关系
请选择序号:
第20题
以下程序的执行结果是n=30,请填空.
#include<iostream.h>
template<class T>
class Sample
{
T n;
public:
Sample(){}
Sample(T i){n=i;}
Sample<T>&operator+(const Sample<T>&);
void disp(){cout<<"n="<<n<<endl;}
};
template<class T>
Sample<T>&Sample<T>::operator+(const Sample<T>&s)
{
static Sample<T> temp;
;
return temp;
}
void main()
{
Sample<int>s1(),s2(20),s3;
s3=s1+s2;
s3.disp();