Пищов за делфи - Деструктори, индекс спецификации, рефериращи данни
| Информационни технологии | 2009-12-04 | 66 сваляния |
ДеструкториВъншно те приличат на процедури но се използва служ дума destructor. Задължителна е регистрова конвенция за заместване на параметрите. Може да има много деструк но се препоръчва да е един и тои да е destroy. (виртуално наследен от Tobject). Дестр освобождава заделената в тялото на констр или някъде другаде по време на работа на обекта. Препоръчва се тялото на дестр да завършва с извикване на наследения дестр за да могат да бъдат освободени ресурси получени по наследство. <реф данна>.free тества дали реф данна е nill. Ако не е се изпълнява destroy. | в обръщение към полето на read или в извикване на ф-цията в спецификацията read. ----||----- вляво от операция за присвояване се замества с името на полето участващо в спецификацията write или в извикване на процедура, за аргумент на която се задава дясната ст-т на оператор за присвояване. | Индекс спецификаци(ИС) Използва се в случаите когато няколко св-ва с различни имена искат да използват една и съща СЗД read или write. Данните (полетата) свързани със св-вата в този случаи се съхраняват във вид на масив а ИС се използва за достъпдо съответен компн на масива. Цялата ст-т може да е полож или отриц число. Достъпът се реализира чрез методи като при read специфик това трябва да е ф-ция с 1 допълнителен параметър ст-т от цял тип който ще се замести от ИС. Параметъра трябва да е последен а ф-цията да връща ст-т съвпадаша по тип с типа на св-вото. При write той трябва да е процед с един допълнителен параметър от цял тип които е предпосл. Този параметър получава ст-т от ИС. STORAGE спецификации. Те нямат отношение към работата на програмата. Управляват начина по който се обработва runtime info. Има 3 вида : -stored <булева ст-т>. Булевата ст-т мове да е: true, false; поле от булев тип или метод ф-ция който връща булева ст-т. Подразбрана е true. => | Рефериращи данни от тип рефериране на класове. Тип рефериране на клас се създава така: Class of <<SPAN LANG="bg-BG">име на клас> Множеството ст-ти на този тип е класът който участва в декларацията и вс негови производни класове. От типа рефериращ класове могат да се създадат променливи Type Tclass=class of Tobject; Var AnyClassRef:Tclass; Последното е променлива на която може да се присвои nil а и името на клас съвпадащ с деф. Множество. Променлива от този тип може да се използва в контекст на виртуален констр. Ако вирт констр се извика за изпълнение в контекста на име на клас той е статичен по отношение на контекста си. Ако се извика за изпълнение в контекста на променлива ще се изпълни онази реализация на констр която отговаря на текущата и ст-т. |
Тагове от реферата: destructor, структор, реферира, еструктори, пищов, ъншно, специкаии, Регистрова, Индекс, ПРОЦЕДУРИ











