Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ШПОРЫ КПИ.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
86.48 Кб
Скачать

25.Перечислите основные принципы ооп, дайте определение каждому понятию, приведите примеры возможных вариантов реализации обозначенных принципов.

Инкапсуляция - это механизм, который объединяет данные и код, манипулирующий зтими данными, а также защищает и то, и другое от внешнего вмешательства или неправильного использования. Полиморфизм - это свойство, которое позволяет одно и то же имя использовать для решения двух или более схожих, но технически разных задач.(перегрузка функций) Наследование - это процесс, посредством которого один объект может приобретать свойства другого(наследование классов).

26.Поясните, что представляет собой такой тип данных, как класс, запишите синтаксис объявления класса в контексте языка С++, приведите пример определения класса.

Класс – абстрактный тип данных, определенный пользователем и представляет собой модель реального объекта в виде данных и функций.

Class <name>{ Class worker

private: private:

<Скрытые элементы> char fio[30];

Public: void getdata() void putdata() const;

<описание доступных>};

27.Назовите компоненты, которые могут входить в определение класса, поясните их назначение, запишите синтаксис объявления в рамках определения класса в контексте языка С++, приведите пример реализации.

31.Дайте определения понятиям конструктора и деструктора в контексте языка С++, поясните назначение, запишите синтаксис объявления, приведите пример использования.

Конструктор – это метод класса, выполняющийся автоматически в момент создания объекта. Конструктор предназначен для инициализации объекта.

Особенности:

Имя конструктора совпадает с именем класса

Конструктор не возвращает значение, даже типа void

Конструктор описывается в секции public

Синтаксис: имя_класса ([параметры])

Список_инициализации {

[Операторы;] }

Например:

someClass() : m1(3),m2(7),m3(0){ }

30.Поясните, что представляет собой указатель this в контексте языка С#, запишите способы обращения к свойствам и методом объекта с использованием данного указателя, приведите пример метода, в котором используется данный указатель.

Данные у каждого объекта свои, а функции класса общие для всех объектов,

указатель this помогает, определить с данными какого объекта будет работать функция.

class MyClass{

int a;

public:

void set(int a);

};

void MyClass::set(int a){

this->a=a; //полю класса присваиваются данные, определение кому присваивается.

}

28.Назовите спецификаторы задания области видимости элементов класса в контексте языка С++, запишите их, поясните на фоне этого, что представляет собой инкапсуляция и как расширяет область видимости элементов класса каждый из спецификаторов, приведите пример определения класса, обладающего элементами, имеющими разную область видимости.

Инкапсуляция - это механизм, который объединяет данные и код, манипулирующий зтими данными, а также защищает и то, и другое от внешнего вмешательства или неправильного использования. При описании класса в его заголовке перечисляются все классы, являющиеся для него базовыми. Возможность обращения к элементам этих классов регулируется с помощью ключей доступа private, protected и public. class имя : [private | protected | public] базовый класс

{тело}; Class <name>{ Class worker

private: private:

<Скрытые элементы> char fio[30];

Public: void getdata() void putdata() const;

<описание доступных>};

29.Поясните, что представляет собой объект, запишите синтаксис объявления в контексте языка С++, назовите способы передачи объекта в функцию в качестве параметра.

Конкретные переменные типа <<класс>> наз. Объектами класса. Доступ к элементам объекта аналогичен доступу к полям структуры. Для этого используется операция. При обращении к элементу через имя объекта и операция -> при обращении через указатель.

Int main() {

Worker w; объявление объекта класс воркер

w.getdata(); вызываем метод

w.putdata();

return 0;

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]