69710

Перевантаження операторів за допомогою дружніх функцій

Лекция

Информатика, кибернетика и программирование

Оператори можна перенавантажувати за допомогою дружніх функцій, які не являються членами класу. Це означає, що дружні функції не отримують неявно покажчик this. Отже, перевантажена операторна функція отримує параметри явно. Таким чином, при перевантаженні бінарного оператора дружня...

Украинкский

2014-10-09

23 KB

0 чел.

Тема 10: Перевантаження операторів за допомогою дружніх функцій

Оператори можна перенавантажувати за допомогою дружніх функцій, які не являються членами класу. Це означає, що дружні функції не отримують неявно покажчик this. Отже, перевантажена операторна функція отримує параметри явно. Таким чином, при перевантаженні бінарного оператора дружня функція отримує два параметри, а при перевантаженні унарного оператора — один. Першим параметром дружньої функції, що перенавантажує бінарной оператор, є його лівий операнд, а другим — правий операнд.

Наступна програма демонструє перевантаження унарного та бінарного операторів за допомогою дружніх функцій.

 

#include <iostream.h>

class car {

int speed;

public:

car(int nSpeed=0) { speed = nSpeed; }

friend car operator+(car lp, car rp);

friend car operator--(car &ob);

};

car operator+(car lp, car rp) {

car temp;

temp.speed = lp.speed + rp.speed;

return temp;

}

car operator--(car &ob) {

ob.speed--;

 return ob;

}

Якщо дружні функції застосовуються для перевантаження операторів інкременту та декременту, їх операнди слід передавати за допомогою посилань. Це необхідно тому, що дружня функція не отримує покажчика this. Оператор "++", наприклад, повинен модифікувати свій операнд. Якщо перенавантажувати цей оператор за допомогою дружньої функції, як завжди, то операнд буде передаватися по значенню. Це означає, що дружня функція не зможе змінити цей параметр. Проте цю проблему можна вирішити, якщо передати операнд дружній функції за допомогою посилання. В цьому випадку всі зміни усередині функції будуть відбиватися на її фактичному параметрі.


 

А также другие работы, которые могут Вас заинтересовать

30231. Социальная информатика: предмет и задачи курса 29 KB
  Одним из критериев перехода общества к постиндустриальной и далее к информационной стадии развития может служить процент населения занятого в сфере услуг: если в обществе более 50 населения занято в сфере услуг наступила постиндустриальная фаза его развития; если в обществе более 50 населения занято в сфере информационных услуг общество стало информационным. Концепция постиндустриального общества как общесоциологическая теория развития достаточно глубоко разработана западными исследователями: Д. Понятие...
30232. Семантические основы социальной информатики 56 KB
  Нередко в этих теоретических построениях термин информация наполнен разным смыслом а следовательно сами теории высвечивают лишь часть граней некоторой системы знаний которую можно назвать общей теорией информации или информологией наукой о процессах и задачах передачи распределения обработки и преобразования информации. Формализация знаний: методы и приемы. При поиске наиболее удобных рациональных средств и форм информационного обмена человек чаще всего сталкивается с проблемой компактного и...
30233. Социальные коммуникации: история, современность, перспективы 22.5 KB
  Когда информационная среда рассматривается с точки зрения хранимой и циркулирующей в ней информации она как правило выступает как объект техники служащей определенным человеческим целям которые выступают по отношению к этой технике внешними условиями функционирования. Опираясь на количественные меры математической теории информации Робертсон ранжирует цивилизации по количеству производимой ими информации следующим образом : Уровень 0 информационная емкость мозга отдельного человека 107 бит; Уровень 1 устное общение внутри...
30234. Информационные ресурсы общества 25.5 KB
  Информационный кризис начала 70х годов ХХ века проявился в снижении эффективности информационного обмена: резко возрос объем публикуемых данных; между группами разных специалистов стало трудно общаться; возрос объем неопубликованной информации; выросла проблема межязыкового обмена в мире. информационного âвзрываâ лавинообразного роста объемов социоинформации сопровождающегося информационным âголодомâ физиологическими ограничениями человека в восприятии и переработке информации и трудностями в выделении нужной информации из...
30235. Понятие и структура оборотных фондов предприятий СКСиТ 89 KB
  Понятие об оборотных средствах их классификация. ОБОРОТНЫЕ СРЕДСТВА Текущие активы денежные средства вложенные в оборотные производственные фонды и фонды обращения. Состав оборотных средств: денежные средства наиболее ликвидная часть оборотных активов. Это денежные средства в кассе и денежные средства в банках в т.
30236. Расчет себестоимости туристского продукта и услуг социально-культурного сервиса 50.5 KB
  Но если цена продукции зависит от ситуации которая складывается на рынке то затраты на ее производство непосредственно зависят от финансовохозяйственной деятельности самого предприятия. Следовательно совокупные затраты предприятия представляют собой издержки производства и издержки обращения и они лежат в основе определения себестоимости продукции работ услуг. При определении себестоимости общего объема выпуска продукции все затраты группируются по принципу однородности по следующим элементам: материальные затраты за вычетом...
30237. Понятие и виды цен. Методы ценообразования и ценовая политика на предприятиях СКСиТ 146 KB
  Только после этого можно определять цели в соответствии с которыми устанавливаются цены. Сущность цены. Кривая спроса показывает что спрос потребителей на туристские услуги увеличивается по мере снижения цены на них. Производители напротив увеличивают предложение по мере роста цены.
30238. Налогообложение в СКСиТ 61.5 KB
  Предприятий для которых туризм представляет собой основной вид деятельности. принадлежность к группе малых предприятий регламентируется среднегодовой численностью персонала для различных видов деятельности в пределах 30100 человек. По общероссийскому классификатору отраслей народного хозяйства ОКОНХ основные предприятия туристской сферы относятся к отрасли Здравоохранение физкультура и социальное обеспечение по Общероссийскому классификатору услуг населения ОКУН большинство видов деятельности туристских организаций относится к...
30239. Оценка эффективности деятельности предприятий СКСиТ 85.5 KB
  Оценка эффективности деятельности предприятий СКСиТ. Понятие эффективности Для того чтобы предприятие могло сформировать основные направления своего развития и выработать соответствующую экономическую стратегию необходимо сформулировать критерии к которым оно должно стремиться и соответствующие показатели характеризующие выполнение этих критериев. В общем виде показатель экономической эффективности функционирования предприятия определяется в виде отношения результата к затратам необходимым для достижения этого результата. E = F R...