Лабораторная работа №2 по дисциплине: «Физика» Выполнил(а): тангриев ф группы: 1з-22 гд алмалык 2023 год


Download 204.45 Kb.
bet2/4
Sana30.10.2023
Hajmi204.45 Kb.
#1733529
TuriЛабораторная работа
1   2   3   4
Bog'liq
ЛАБОРАТОРНАЯ РАБОТА мисис

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


Наследование - это процесс, посредством которого один объект может наследовать свойства другого объекта и добавлять к ним черты, характерные только для него.
Смысл и универсальность наследования заключается в том, что не надо каждый раз заново (с нуля) описывать новый объект, а можно указать родителя (базовый класс) и описать отличительные особенности нового класса. В результате, новый объект будет обладать всеми свойствами родительского класса плюс своими собственными отличительными особенностями.
Когда один класс наследуется другим, используется следующая форма записи:
class имя_производного_класса: спецификатор_доступа имя_базового_класса
{
//...................
}
Полиморфизм - это свойство, которое позволяет одно и то же имя использовать для решения нескольких технически разных задач.
В общем смысле, концепцией полиморфизма является идея “один интерфейс – множество методов”. Это означает, что можно создать общий интерфейс для группы близких по смыслу действий.
Индексирование. Чтобы задать смысл индексов для объектов класса используется функция operator[]. Второй параметр (индекс) функции operator[] может быть любого типа. Это позволяет определять ассоциативные массивы и т.п.
Вызов функции, то есть запись выражение (список_выражений), можно проинтерпретировать как бинарную операцию, и операцию вызова можно перегружать так же, как и другие операции. Список параметров функции operator() вычисляется и проверяется в соответствии с обычными правилами передачи параметров. Перегружающая функция может оказаться полезной главным образом для определения типов с единственной операцией и для типов, у которых одна операция настолько преобладает, что другие в большинстве ситуаций можно не принимать во внимание.
Для типа ассоциативного массива assoc мы не определили итератор. Это можно сделать, определив класс assoc_iterator, работа которого состоит в том, чтобы в определенном порядке поставлять элементы из assoc. Итератору нужен доступ к данным, которые хранятся в assoc, поэтому он сделан другом:
class assoc
{
friend class assoc_iterator;
pair* vec;
int max;
int free;
public:
assoc(int);
int& operator[](char*);
};



Download 204.45 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling