Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Наследование метода Create классом TOBject

7.9K
26 июня 2007 года
Crainov
39 / / 04.06.2006
Почему если я создаю обьект родителем которого является TObject то не могу унаследовать его конструктор(конструктор TObject).
Dот на такой конструктор constructor Create;override; выдается ошибка Cannot override a static metod;
268
26 июня 2007 года
Михаил
587 / / 25.06.2005
Цитата: Crainov
Почему если я создаю обьект родителем которого является TObject то не могу унаследовать его конструктор(конструктор TObject).
Dот на такой конструктор constructor Create;override; выдается ошибка Cannot override a static metod;


а зачем его неаследовать? он ведь все равно ничего не делает. а унаследуешь ты его в любом случае, ведь вызвать inherited ты можешь.
override это не наследование, наследовать можно не только виртуальные и динамические методы, override это перекрытие ранее объявленого виртуального или динамического метода, чтобы работала конструкция вида

Код:
type
c=class
procedure asd;virtual;
end;
c1=class(c)
procedure asd;override;
end;
{реализация}
...
{реализация}
var a:c;
begin
a:=c1.Create;
a.asd;//будет вызвана c1.asd, если бы метод был статическим вызван был бы c.asd
end;
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог