19826

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

Доклад

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

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

Украинкский

2013-07-17

23.5 KB

1 чел.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


 

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

78168. МОДЕЛИРОВАНИЕ БИЗНЕС-ПРОЦЕССОВ СРЕДСТВАМИ BPWIN 352 KB
  Диаграммы потоков данных Dt Flow Digrmming: работы внешние сущности ссылки потоки работ хранилища данных. Метод описания процессов IDEF3: работы связи объекты ссылок перекрестки. Стоимостный анализ Как было указано ранее обычно сначала строится функциональная модель существующей организации работы SIS как есть. BCанализ может проводиться только тогда когда модель работы последовательная следует синтаксическим правилам IDEF0 корректная отражает бизнес полная охватывает всю рассматриваемую область и стабильная проходит...
78169. ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ИС 235.5 KB
  Основные понятия классификации информации. Информационное обеспечение ИС является средством для решения следующих задач: однозначного и экономичного представления информации в системе на основе кодирования объектов; организации процедур анализа и обработки информации с учетом характера связей между объектами на основе классификации объектов; организации взаимодействия пользователей с системой на основе экранных форм вводавывода данных; обеспечения эффективного использования информации в контуре управления деятельностью объекта...
78170. МОДЕЛИРОВАНИЕ ИНФОРМАЦИОННОГО ОБЕСПЕЧЕНИЯ 224.5 KB
  Создание логической модели данных: уровни логической модели; сущности и атрибуты; связи; типы сущностей и иерархия наследования; ключи нормализация данных; домены. При этом имя сущности должно отражать тип или класс объекта а не его конкретный экземпляр например АЭРОПОРТ а не ВНУКОВО. Каждый экземпляр сущности должен однозначно идентифицироваться и отличаться от всех других экземпляров данного типа сущности. Каждая сущность должна обладать некоторыми свойствами: иметь уникальное имя; к одному и тому же имени должна всегда применяться...
78171. Унифицированный язык визуального моделирования Unified Modeling Language (UML) 204 KB
  Диаграммы в UML. Диаграммы состояний: начального состояния конечного состояния переходы. Диаграммы внедрения: подсистемы компоненты связи. Диаграммы размещения.
78172. Этапы проектирования ИС с применением UML 347.5 KB
  Этапы проектирования ИС: моделирование бизнеспрецедентов разработка модели бизнесобъектов разработка концептуальной модели данных разработка требований к системе анализ требований и предварительное проектирование системы разработка моделей базы данных и приложений проектирование физической реализации системы. Диаграммы базы данных dtbse digrms модель структуры базы данных отображает таблицы столбцы ограничения и т. Диаграммы компонентов component digrms модель иерархии подсистем отражает физическое размещение баз данных...
78173. Понятие экономической информационной системы. Классы ИС. Структура однопользовательской и многопользовательской, малой и корпоративной И 122 KB
  Понятие экономической информационной системы. Этапы создания ИС: формирование требований концептуальное проектирование спецификация приложений разработка моделей интеграция и тестирование информационной системы. Информация в современном мире превратилась в один из наиболее важных ресурсов а информационные системы ИС стали необходимым инструментом практически во всех сферах деятельности. Информационные системы можно классифицировать по целому ряду различных признаков.
78174. Понятие жизненного цикла ПО ИС. Процессы жизненного цикла: основные, вспомогательные, организационные. Содержание и взаимосвязь процессов жизненного цикла ПО ИС 121.5 KB
  Модели жизненного цикла: каскадная модель с промежуточным контролем спиральная. Модель жизненного цикла отражает различные состояния системы начиная с момента возникновения необходимости в данной ИС и заканчивая моментом ее полного выхода из употребления. Модель жизненного цикла структура содержащая процессы действия и задачи которые осуществляются в ходе разработки функционирования и сопровождения программного продукта в течение всей жизни системы от определения требований до завершения ее использования. В настоящее время известны и...
78175. ОРГАНИЗАЦИЯ РАЗРАБОТКИ ИНФОРМАЦИОННЫХ СИСТЕМ 147.5 KB
  Обследование это изучение и диагностический анализ организационной структуры предприятия его деятельности и существующей системы обработки информации. Этап предполагает тесное взаимодействие с основными потенциальными пользователями системы и бизнесэкспертами. По завершении этой стадии обследования появляется возможность определить вероятные технические подходы к созданию системы и оценить затраты на ее реализацию затраты на аппаратное обеспечение закупаемое программное обеспечение и разработку нового программного обеспечения ....