Делфи 2006 - Модел на единични
Има много случаи, когато определен клас в програма трябва да бъде представен от един екземпляр. Например, библиотеката Delphi VCL има глобална променлива Приложение (екземпляр на клас ПРИЛОЖЕНИЕ), осигуряване на достъп до системните характеристики на самата програма по време на изпълнение. Очевидно може да има само един екземпляр от този клас и глобалната променлива осигурява достъп до него. Приложение. На теория обаче нищо не пречи на разработчика да създаде нов екземпляр на класа ПРИЛОЖЕНИЕ (фиг. 7.6).
Фигура: 7.6. Моделен модел в дизайнер на модели
Шаблонът Singleton ви позволява да създадете само един екземпляр на клас и той е достъпен чрез указател - вътрешно поле Flnstance, които могат да бъдат достъпни чрез метода Вземете инстанция.
TSingleton = claee строг частен клас var
функция на клас Getlnstance: TSingleton;
Внедряването на този метод е прозрачно - осигурява постоянна работа с един и същ екземпляр на този клас:
функция на клас TSingleton.GetInstance: TSingleton; започнете
Ако FInstance = нула, тогава започнете
FInstance: = TSingleton.Create (); край;
Резултат: = FInstance; край;
В същото време програмистът винаги използва само този метод, без да разбира дали този екземпляр е създаден преди това изрично - тази проверка се извършва автоматично.
Имайте предвид също, че конструкторът е скрит в частната секция на класа TSingleton, така че не може да бъде достъпен, а променливата FInstance е описана като променлива на класа, която позволява абстрактни операции над класа, без изрично създаване на обект. Тази тактика е много подходяща за тази задача.
Бобровски С. И. Технологии Delphi 2006. Нови възможности. - SPb.: Peter, 2006. - 288 e.: Ил.
- Сингълтън в Делфи
- WordBasic и Macroviruses, Visual Basic, Статии, Програмиране - Програмиране C, Delphi, C #
- Прикачени файлове - Компонент за Joomla - Joomla 3 шаблони
- E или по-новото му развитие - Вирусология - Delphi - Каталог на статиите - Вирусология, изглед от
- USR адаптация към B6 BVY 2006