Добавить комментарий

Delphi

Получить доступ к protected методам чужого класса

Поскольку секция protected открывает доступ потомкам, то для доступа туда надо просто создать потомка. 

// Где-то в чужом коде, куда нам не хочется вмешиваться.
type 
  TA = class
         protected
           procedure DoIt;
       end;
...
// Где-то у нас, где нужно вызвать защищённый метод.
type
// объявляем потомка
  TB = class(TA);

var A: TA;

begin
  A := TA.Create;
  // A.DoIt - не пройдёт, метод недоступен.
  TB(A).DoIt; // А вот это вполне законная конструкция. 
...  

 

Filtered HTML

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Допустимые HTML-теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и абзацы переносятся автоматически.
  • Вы можете цитировать другие сообщения, используя тэг [quote]

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и абзацы переносятся автоматически.