Добавил:
Upload
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:2K_programuvanna / 3 mod / obj / lab2
.cpp#include <stdio.h>
//Родительский класс
class X{
// Поля х1,х2 не дотупны из вне класса, но будут доступны наследникам класса
protected:
int x1,x2;
public:
//Конструктор класса
X(int X1, int X2){
x1 = X1;
x2 = X2;
}
// Деструктор класса
~X(){}
// Установка и чтение полей класса
void set_x1(int value){ x1 = value;}
int get_x1() { return x1;}
void set_x2(int value){ x2 = value;}
int get_x2() { return x2;}
// Установка и чтение полей класса
void set_all(int X1, int X2){
x1 = X1;
x2 = X2;
}
void print_all(){
printf("x1 = %d, x2 = %d", x1,x2);
}
};
// Класс Y наследуется от Х
class Y : public X{.
// В нем объявлено дополнительное поле
int x3;
public:
// Конструктор класса У вызывает конструктор класса Х и инициализирует новое поле х3
Y(int X1, int X2, int X3):X(X1,X2){
x3 = X3;
}
void set_x3(int value){ x3 = value;}
int get_x3() { return x3;}
// Эти методы перезагружают методы класса Х
void set_all(int X1, int X2, int X3){
x1 = X1;
x2 = X2;
x3 = X3;
}
void print_all(){
printf("x1 = %d, x2 = %d,x3 = %d", x1,x2,x3);
}
// Выполение задания курсовой работы
int run(){
return x1+x2+x3;
}
};
void main(){
Y instance(1,2,3);
printf("resultat Y(%d,%d,%d).run = %d",
instance.get_x1(),
instance.get_x2(),
instance.get_x3(),
instance.run());
}
Соседние файлы в папке obj