32. Виртуальные методы
Метод становится виртуальным, если за его объявлением в типе объекта стоит новое зарезервированное слово virtual. Если объявляется метод в родительском типе как virtual, то все методы с аналогичными именами в дочерних типах также должны объявляться виртуальными во избежание ошибки компилятора.
Ниже приведены объекты из примера платежной ведомости, должным образом виртуализированные:
tyрe
PEmрloyee = ^TEmployee;
TEmployee = object
Name, Title: string[25];
Rate: Real;
constructor Init (AName, ATitle: String; ARate: Real);
function GetPayAmount: Real; virtual;
function GetName: String;
function GetTitle: String;
function GetRate: Real;
рrocedure Show; virtual;
end;
PHourly = ^THourly;
THourly = object(TEmployee);
Time: Integer;
constructor Init (AName, ATitle: String; ARate: Real;
Time: Integer);
function GetPayAmount: Real; virtual;
function GetTime: Integer;
end;
PSalaried = ^TSalaried;
TSalaried = object(TEmployee);
function GetPayAmount: Real; virtual;
end;
PCommissioned = ^TCommissioned;
TCommissioned = object(Salaried);
Commission: Real;
SalesAmount: Real;
constructor Init (AName, ATitle: String; ARate,
ACommission, ASalesAmount: Real);
function GetPayAmount: Real; virtual;
end;
Конструктор является специальным типом процедуры, которая выполняет некоторую установочную работу для механизма виртуальных методов. Более того, конструктор должен вызываться перед вызовом любого виртуального метода. Вызов виртуального метода без предварительного вызова конструктора может привести к блокированию системы, а у компилятора нет способа проверить порядок вызова методов.
Каждый тип объекта, имеющий виртуальные методы, обязан иметь конструктор.
Конструктор должен вызываться перед вызовом любого другого виртуального метода. Вызов виртуального метода без предыдущего обращения к конструктору может вызвать блокировку системы, и компилятор не сможет проверить порядок, в котором вызываются методы.
Автор: Цветкова А.В.
<< Назад: Деструкторы
>> Вперед: Поля данных объекта и формальные параметры метода
Рекомендуем интересные статьи раздела Конспекты лекций, шпаргалки:
▪ Международные экономические отношения. Конспект лекций
▪ Стоматология. Конспект лекций
▪ Зарубежная литература XIX века в кратком изложении. Шпаргалка
Смотрите другие статьи раздела Конспекты лекций, шпаргалки.
Читайте и пишите полезные комментарии к этой статье.
<< Назад
Последние новости науки и техники, новинки электроники:
Рыжий ген и ускоренная эволюция
30.04.2026
Вопрос о том, как и насколько быстро меняется человеческий вид, давно занимает биологов и генетиков. Долгое время считалось, что эволюционные процессы происходят крайне медленно, однако новые данные заставляют пересматривать эти представления. Особенно интересные результаты связаны с изменением частоты редких генетических признаков, включая рыжий цвет волос.
Рыжеволосость сегодня остается редкой чертой: ее носители составляют менее 2 процентов мирового населения. Однако анализ древней и современной ДНК показывает, что ген, связанный с этим признаком, за последние примерно 10 тысяч лет стал заметно более распространенным, особенно среди популяций Европы. Более того, вместе с ним исследователи фиксируют и другие изменения в генетическом профиле человека, затрагивающие внешность и физиологические особенности.
Среди сопутствующих тенденций, выявленных в генетических данных, отмечается увеличение частоты светлой кожи, снижение вероятности мужского облысения, а также некоторые физиолог ...>>
Нейтринный лазер
30.04.2026
Нейтринный лазер - это гипотетическое устройство, способное управлять потоками одних из самых трудноуловимых частиц во Вселенной. Такая разработка открывает новые горизонты в изучении фундаментальных законов природы и может изменить представления о космосе.
Идею нового типа излучателя представили физики из Massachusetts Institute of Technology, предложив лазер, который вместо света генерирует поток нейтрино. Эти частицы, почти не взаимодействующие с материей, настолько слабо проявляют себя, что их часто называют "частицами-призраками". Тем не менее они пронизывают все вокруг: по оценкам, триллионы нейтрино ежесекундно проходят через человеческое тело, не оставляя следа.
Несмотря на их колоссальную распространенность во Вселенной, нейтрино остаются одними из наименее изученных частиц. Их крайне сложно регистрировать, а еще сложнее контролировать, поэтому традиционно их получают в крупных установках вроде ядерных реакторов или ускорителей частиц. Такие комплексы требуют огромных за ...>>
Мороженое не такое вредное, как принято считать
29.04.2026
В питании часто встречаются продукты, которые одновременно вызывают удовольствие и сомнения с точки зрения здоровья. К таким относится и мороженое: оно воспринимается как типичный десерт с высоким содержанием сахара и жиров, однако современные научные данные постепенно усложняют это привычное представление.
Долгое время считалось, что мороженое не может быть частью рационального питания, однако исследования последних лет показывают более неоднозначную картину. Ученые подчеркивают, что влияние этого продукта на организм зависит не только от его сладости или калорийности, но и от состава, качества ингредиентов и общего образа жизни человека.
Одни из наиболее масштабных данных были получены в рамках долгосрочных наблюдений в США, включавших проекты Nurses Health Study, Nurses Health Study II и Health Professionals Follow-Up Study. В этих исследованиях на протяжении 20-40 лет наблюдали примерно 190 тысяч взрослых участников, регулярно собирая данные об их питании, физической активнос ...>>
Случайная новость из Архива Новый материал десятилетиями накапливает и сохраняет солнечную энергию
05.11.2019
Ученые из Технического университета Чалмерса в Гетеборге нашли способ, как использовать солнечную энергию, а также сохранять ее на десятилетия, чтобы в итоге использовать для обогрева. Система во много превзойдет традиционные батареи для отопления. Суть заключается в том, что покрытие, сохраняющее энергию, можно будет наносить на окна и даже текстиль.
Система основана на жидкой молекуле, состоящей из углерода, водорода и азота. При попадании солнечного света молекула поглощает солнечную энергию и удерживает ее до тех пор, пока катализатор не начнет выделять ее в виде тепла.
На разработку специального хранилища для солнечной энергии ушло почти 10 лет и 2,5 млн долларов. По словам профессора кафедры химии и химического машиностроения Мот-Поулсена, устройство может сохранять энергию на 5-10 лет дольше, чем обычные литий-ионные аккумуляторы.
Прозрачное покрытие, захватывающее солнечную энергию, можно наносить на окна домов, автомобили и даже на одежду. Таким образом, сокращается количество потребляемой электроэнергии, а также выбросы углерода.
Пока неизвестно, можно ли использовать систему для непосредственного производства электричества. Исследователи считают, что такой потенциал существует, но пока сосредоточены на вопросе отопления.
Новая единица хранения может появиться через 5-6 лет, а покрытие уже через 3 года.
|
Другие интересные новости:
▪ Геймерский монитор AOC AGON PRO AG274QGM
▪ Обязательная функция удаленной блокировки гаджета
▪ Клетка для углекислого газа
▪ Siemens представил мобильный телефон ST60
▪ Система идентификации и беспроводной передачи данных Texas Instruments RF430F5978
Лента новостей науки и техники, новинок электроники
Интересные материалы Бесплатной технической библиотеки:
▪ раздел сайта Крылатые слова, фразеологизмы. Подборка статей
▪ статья Здоровый образ жизни как система индивидуального поведения человека. Основы безопасной жизнедеятельности
▪ статья Когда появились свадьбы? Подробный ответ
▪ статья Главный технолог. Должностная инструкция
▪ статья Дегтярный лак. Простые рецепты и советы
▪ статья Электрооборудование и электроустановки общего назначения. Средства контроля, измерений и учета. Энциклопедия радиоэлектроники и электротехники
[an error occurred while processing this directive]
Оставьте свой комментарий к этой статье:
Главная страница | Библиотека | Статьи | Карта сайта | Отзывы о сайте

www.diagram.com.ua
2000-2026