Лекция
Привет, сегодня поговорим про перегрузка бинарных операций, обещаю рассказать все что знаю. Для того чтобы лучше понимать что такое перегрузка бинарных операций , настоятельно рекомендую прочитать все из категории С++ (C plus plus).
Любая бинарная операция Å может быть определена двумя способами: либо как компонентная функция с одним параметром, либо как глобальная (возможно дружественная) функция с двумя параметрами. В первом случае xÅ y означает вызовx.operatorÅ(y), во втором – вызов operatorÅ(x,y).
· Операции, перегружаемые внутри класса, могут перегружаться только нестатическими компонентными функциями с параметрами. Об этом говорит сайт https://intellect.icu . Вызываемый объект класса автоматически воспринимается в качестве первого операнда.
· Операции, перегружаемые вне области класса, должны иметь два операнда, один из которых должен иметь тип класса.
Примеры.
1)class person{…};
class adresbook
{ // содержит в качестве компонентных данных множество объектов типа //person, представляемых как динамический массив, список или дерево
…
public:
person& operator[](int); //доступ к i-ому объекту
};
person& adresbook : : operator[](int i){. . .}
void main()
{class adresbook persons;
class person record;
…
record = persons[3];
}
2) class person{…};
class adresbook
{ // содержит в качестве компонентных данных множество объектов типа //person, представляемых как динамический массив, список или дерево
…
public:
friend person& operator[](const adresbook&,int); //доступ к i-ому объекту
};
person& operator[](const adresbook& ob ,int i){. . .}
void main()
{class adresbook persons;
class person record;
…
record = persons[3];
}
В общем, мой друг ты одолел чтение этой статьи об перегрузка бинарных операций. Работы впереди у тебя будет много. Смело пиши комментарии, развивайся и счастье окажется в твоих руках. Надеюсь, что теперь ты понял что такое перегрузка бинарных операций и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории С++ (C plus plus)
Из статьи мы узнали кратко, но содержательно про перегрузка бинарных операций
Комментарии
Оставить комментарий
С++ (C plus plus)
Термины: С++ (C plus plus)