|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#4
|
|||
|
|||
приведенный вами пример немного запутал, но, поправьте тогда. В нем имеем процедуру TMethodDataSetOpen , она входит в объект A. и эта процедура присвоена переменной S. и эта сама переменная будет иметь 2 указателя. и при обращении к ней, будет затребована ссылка на класс, а потом и на саму процедуру.
Прочитаю про процедурные типы на выходных, чтобы не задавать глупых и некорректных вопросов. А про интерфейся все же спрошу сейчас. В моем понмиании идет описание класса к которому мы прикручиваем интерфейс , потом ниже идет уже реализация вновь созданного нами класса. мне было бы более ясна третья строчка если она была бы ввиде: type ILoadable = interface ['{A10BFF6A-1C96-4401-87E6-10250D032448}'] procedure LoadStrings; end; TNewButton = class(TButton, ILoadable) public procedure LoadStrings; end; а в ранее приведенном примере все как-то запутано, не видно какие методы в интерфейсе, догадываюсь что они описаны в подлкючаемом модуле. но где реализация они прописаны в нвоом создаваемом классе TSequentialStreamAdapter ? |