Добавил:
korayakov
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабы / C++.Ашарина / !Сделанные / Наследование / var11 / сделанная (6)
.txt#include <iostream.h>
#include <stdlib.h>
class base {
public:
int num;
base(){num=0;}
virtual get_num(){cout<<"Base num="<<num<<endl;}
//virtual add(int)=0;
};
class mass:public base{
public:
int mas[80];
mass(){num=0;}
mass(int n){
for (num=0;num<n;num++){
mas[num]=int(rand()/1000);
}
// cout <<"debugNUM "<<num<<endl;
}
get_num(){cout<<"Mass num="<<num<<endl;}
add(int n){
num++;
mas[num]=n;
}
};
class stack:public base{
public:
int stek[80];
stack(){num=0;}
stack(int n){
for (num=0;num<n;num++){
stek[num]=int(rand()/1000);
}
// cout <<"debugNUM "<<num<<endl;
}
get_num(){cout<<"Stack num="<<num<<endl;}
add(int n){
num++;
stek[num]=n;
}
};
class pass:public base{
public:
int pas[80];
pass(){num=0;}
pass(int n){
for (num=0;num<n;num++){
pas[num]=int(rand()/1000);
}
// cout <<"debugNUM "<<num<<endl;
}
get_num(){cout<<"Pass num="<<num<<endl;}
add(int n){
num++;
pas[num]=n;
}
};
void main ()
{
mass ob1(10);
ob1.get_num();
ob1.add(30);
ob1.get_num();
stack ob2(20);
ob2.get_num();
ob2.add(20);
ob2.get_num();
pass ob3(30);
ob3.get_num();
ob3.add(10);
ob3.get_num();
}