Лабораторна робота 1 Класи І об’єкти в С++ Варінат 16 Виконав: Студент кн-22003б Масло Сергій Вячеславович



Дата13.10.2023
өлшемі77.08 Kb.
#480720
түріЛабораторна робота
ООП ЛБ1


НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ БІОРЕСУРСІВ І
ПРИРОДОКОРИСТУВАННЯ УКРАЇНИ

Факультет інформаційних технологій


Кафедра комп`ютерних наук
Об’єктно-орієнтовне програмування
Лабораторна робота 1
Класи і об’єкти в С++
Варінат 16
Виконав:
Студент
КН-22003б
Масло Сергій Вячеславович

В цій лабораторні потрібно створити клас «квадрат», у якому:


1) екземпляр містить розмір сторони квадрата.
2) конструктор без параметра створює екземпляр зі значенням 0, а конструктор з параметрами створює екземпляр з відповідним значенням сторони.
3) методи дозволяють отримувати і присвоювати значення сторони і обчислювати значення площі.
d) функція print_sqr () виводить на екран значення його сторони і площі.
У самій програмі було створено клас „square“, у якому було користувам доступно такі функції: функції для запису та зчитування даних, функція для розрахування площи квадрата.

Нижче наведено приклад реалізації конструкторів і деконструкторів






Фрагмент програми, що показує на використання покажчика на об’єки:


square group[3] = {square(3),
square(5),
square(10)
};


square *ptrSquare = new square[3];
ptrSquare ->set(3);
(ptrSquare + 1) -> set(5);
(ptrSquare + 2) -> set(10);


На функцію:
void (square::*ptrFunction)();
ptrFunction = &square::print_sqr;
(ptrSquare[1].*ptrFunction)();
delete [] ptrSquare;
Лістинг основної програми:


#include
using namespace std;


class square {
int side;
int squareArea;
public:
square();
square(int s);
~square();
int squareAreaCalculation() ;
void print_sqr();
void set(int SIDE);


};


square::square(){
side = 0;
squareArea = 0;
cout << "A constructor without parameters is called for an object " <}
square::square(int s){
side = s;
squareArea = s * s;
cout << "A constructor with parameters is called for an object " <}
square::~square(){
cout << "Destructor called for an object" <}


int square::squareAreaCalculation(){
squareArea = side*side;
return 0;
}
void square::print_sqr(){
cout << "The square area from side length " << side << " is " << squareArea << "\n";
}
void square::set(int SIDE){
side = SIDE;
squareArea = SIDE * SIDE;
}


int main() {


square group[3] = {square(3),
square(5),
square(10)
};


square *ptrSquare = new square[3];
ptrSquare ->set(3);
(ptrSquare + 1) -> set(5);
(ptrSquare + 2) -> set(10);


void (square::*ptrFunction)();
ptrFunction = &square::print_sqr;
(ptrSquare[1].*ptrFunction)();
delete [] ptrSquare;


}


Достарыңызбен бөлісу:




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет