Logo Спонсор сайта — Хостинг Fornex.com Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Быстрые VDS SSD от 150руб/мес в России, Финляндии и США.

Дешевые VPS OpenVZ на SSD дисках.

Виртуальные сервера KVM VPS на SAS дисках от 99 руб/мес.

хостинг сайтов ГиперХост — хостинг сайтов который Вы искали.

Виртуальный хостинг, Аренда VPS серверов, рация доменных имен, SSL сертификаты

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

Надежный хостинг сайтов и VPS на SSD с 2001 года.

Все включено: бесплатный конструктор сайтов, домены и SSL.

Супер партнерская программа. Заработай на хостинге!

5.5.6. Реализация зависимостей

Для реализации зависимостей есть те же две возможности, что и в случае объектно-ориентированных окружений: отображение зависимостей на указатели (ссылки), или реализация зависимостей с помощью вспомогательных объектов.

Если зависимости отображаются на указатели (наиболее традиционный подход для бинарных зависимостей), для этих указателей предусматриваются дополнительные поля в структурах (записях), представляющих объекты взаимно-зависимых классов; если зависимость множественная (хотя бы в одну из сторон), то представляющий ее указатель ссылается не на класс, а на последовательность (в смысле STL) указателей объектов соответствующего класса. Поскольку все зависимости двусторонние, каждый объект из указанной последовательности тоже должен иметь указатель, определяющий рассматриваемую зависимость.

С помощью вспомогательных объектов обычно реализуются зависимости, которые трудно представить через указатели (например, зависимости между несколькими классами).

В качестве примера первого способа реализации зависимостей рассмотрим реализацию зависимости (типа "много к одному") между классами Item и Group:


	struct Item

	{

	struct ItemClass* class;

	struct Group* group;

	};

	struct Group

	{

	struct GroupClass* class;

	int item_count;

	struct Item** items;

	};

Назад | Содержание | Вперед

Лучший защищенный DDos хостинг в России. От 390 руб/м.

VPN, прокси без блокировок РКН в Москве (KVM: 2 core, 1GB RAM, 30GB SSD). От 349 руб/м.

Скидка 50% на первый месяц, для новых клиентов. Промокод ARGOTEL-NEW

Новости мира IT:

Архив новостей

Последние комментарии:

Представлен релиз ядра Linux 5.0 (2)
Понедельник 11.03, 07:27

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 985 1945361
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2015 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...