19826

Організація зовнішнього доступу до локальних компонентів класу (специфікатор friend)

Доклад

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

Організація зовнішнього доступу до локальних компонентів класу специфікатор friend. Технологія об'єктноорієнтованого програмування дає змогу організувати до ступ до закритих членів класу функціями які не є його членами. Для цього дос татньо оголосити ці функції др...

Украинкский

2013-07-17

23.5 KB

1 чел.

Організація зовнішнього доступу до локальних компонентів класу (специфікатор friend).

Технологія об'єктно-орієнтованого програмування дає змогу організувати до-

ступ до закритих членів класу функціями, які не є його членами. Для цього дос-

татньо оголосити ці функції дружніми до цього класу. Щоб зробити функцію

"другом" класу, потрібно помістити її прототип в public-розділ оголошення класу і

попередити його ключовим словом friend. Існують пе-

вні обставини, при яких статус "дружньої" функції класу має велике значення. По-перше, функції-"друзі" є корисними для перевизначення операторів певних типів.

По-друге, функції-"друзі" спрощують створення деяких функцій введення-виве-

дення. Усі ці питання розглядатимемо згодом у цьому навчальному посібнику.

Третя причина частого використання функцій-"друзів" полягає у тому, що в

деяких випадках два (або більше) класи можуть містити члени, які перебувають у

взаємному зв'язку з іншими частинами програми. Наприклад, у нас є два різні кла-

си, які під час виникнення певних подій відображають на екрані "спливаючі" повідомлення.

Інші частини програми, які призначені для виведення даних на екран,

повинні знати, чи є "спливаюче" повідомлення активним, щоб випадково не пере-

записати його. Для уникнення цього у кожному класі можна створити функцію-

члена, що повертає значення, за якою робляться висновки про те, є повідомлення

активним чи ні. Однак перевірка цієї умови вимагатиме додаткових витрат (тобтодвох викликів функцій замість одного). Якщо статус "спливаючого" повідомлення

необхідно перевіряти часто, то ці додаткові витрати можуть виявитися відчутни-

ми. Проте за допомогою функції, "дружньої" для обох класів, можна безпосе-

редньо перевіряти статус кожного об'єкта, викликаючи для цього тільки одну і ту саму функцію, яка матиме доступ до обох класів. У таких ситуаціях "дружня" функція класу дає змогу написати більш ефективний програмний код. 


 

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

44152. Техническое обслуживание и ремонт электропривода ЭПЦ-1000 Д12УХЛ 340.1 KB
  Предназначен для управления рабочими органами запорной арматуры технологических и магистральных трубопроводов на объектах МН: линейной части нефтепровода, НПС (ЛПДС), нефтебаз, пунктов слива-налива, резервуарных парков, морских терминалов, а также регулирующих органов в системах автоматического регулирования давления на НПС (ЛПДС) и линейной части, трубопроводной запорной арматуры систем пожаротушения, водоснабжения и канализации, водяного охлаждения, клапанов систем автоматики отопления и вентиляции
44153. РАЗРАБОТКА МАРКЕТИНГОВОГО ПЛАНА УЧАСТИЯ В ВЫСТАВКЕ (НА ПРИМЕРЕ ООО «СЦ «СЭР», Г. ЛЕНИНСК-КУЗНЕЦКИЙ) 1.2 MB
  Целью работы является разработка плана участия в выставке для совершенствования деятельности предприятия на примере ООО Сервисный Центр СибЭнергоРесурс. Четвертая глава направлена на разработку маркетингового плана участия в выставке для ООО Сервисный Центр СибЭнергоРесурс.3 Разработка маркетингового плана участия в выставке.
44154. Инфаркт миокарда. Реанимационный этап лечения 675.5 KB
  Каждая миокардиальная клетка состоит из миофибрилл, которые состоят из длинных цепей индивидуальных саркомеров — основных сократительных единиц клетки. Каждый саркомер состоит из нитевидных структур — перекрывающихся филаментов, образованных сократительными белками — актином и миозином.
44155. Исследование проблем и разработка основных направлений совершенствования системы развития логистики запасов в ООО «Новые окна» 393 KB
  Теоретико-методологические основы логистики запасов Понятие сущность и виды материальных запасов . Необходимость существования запасов Анализ уровня развития логистики запасов в ООО Новые окна.
44156. Разработка технологического процесса ремонта тормозной системы автомобиля «BMW 3» 2.24 MB
  Продолжением ABS является система контроля торможения на поворотах СВС (Cornering Brake Control). СВС по сигналам четырех датчиков ABS узнает, что автомобиль движется на повороте. Если торможение происходит на повороте, это обычно приводит к тому, что автомобиль пытается, как бы ввернуться в поворот
44157. Разработка нейросетевого алгоритма, выполняющего быстрое и точное распознавание входных 3-х мерных образов 943.5 KB
  В ходе данной работе будет разработан нейросетевой алгоритм, выполняющий быстрое и точное распознавание входных 3-х мерных образов. Будут проведены анализ эффективности работы этой сети в сравнении с аналогичными возможностями человека
44158. БИЗНЕС-ПЛАН ООО «ТПК«МиГ» 1.46 MB
  Цель исследования - дать представление о деятельности рассматриваемого предприятия; выявить его возможности при реорганизации производства по увеличению выпуска продукции и расширению ассортимента; исследовать процесс управления освоением новой продукции, рассмотреть бизнес-план предприятия как инструмента управления освоением продукцией
44160. ИНСТРУМЕНТЫ ПАБЛИСИТИ ИНТЕРНЕТ РЕСУРСА 284.5 KB
  Характеристика инструментов продвижения ИнтернетСМИ в России: исторический аспект. Особенности коммуникационного пространства сети интернет12 Разработка webсайта как инструмент паблисити. Формирование паблисити в Интернете.