Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Form1.Create(nil) и F:=TFrom.Create(nil)


Quattro ©   (2005-08-20 22:15:00) 

Господа!!!!объсните пожалуйста что делаеют эти две строчки??.....не могу никак понять....F:=TFrom.Create(nil) создаёт экземпляр класса TForm и записывает его  в переменную F типа TForm.....Form1.Create(nil)- а вот это вызов метода Create..но что этот вызов делает то??


Eraser   (2005-08-21 01:18:00) [1]

Quattro ©  

Замечание.
Компилятор не выдаст ошибку если вписать следующий код
fmSomeForm := Form1.Create;, где fmSomeForm: TForm,
но в данном случае программа будет вести себя неадекватно, лучше так не делать, не зная тонкостей объектной модели Object Pascal.


Eraser   (2005-08-21 01:14:00) [2]

Quattro ©   (21.08.05 00:31) [7]
так что этот классовый метод даёт то???


Например возможность создать экземпляр данного класса.

и почему его так нельзя вызывать??

Вызывать его можно, но делай это из, так сказать, самого класса, т.е. к примеру
Form1 := TForm1.Create
этот код генерирует (создаёт) объект класса TForm1 и присваевает указатель на этот объект (экземпляр) класс к переменной Form1.


Alexander Panov   (2005-08-21 00:31:00) [3]

только запутали,блин=(

Так вопросы надо задавать конкретнее.

В случае TForm1.Create тоже создается экземпляр класса TForm1.  Но вот управлять им у тебя возможности практически нет.


Alexander Panov   (2005-08-21 00:31:00) [4]

только запутали,блин=(

Так вопросы надо задавать конкретнее.

В случае TForm1.Create тоже создается экземпляр класса TForm1.  Но вот управлять им у тебя возможности практически нет.


Quattro   (2005-08-21 00:31:00) [5]

так что этот классовый метод даёт то???и почему его так нельзя вызывать??


Quattro   (2005-08-21 00:26:00) [6]

только запутали,блин=(


Eraser   (2005-08-21 00:06:00) [7]

Джо ©   (20.08.05 23:46) [2]

Можно, но не нужно.


Джо   (2005-08-20 23:46:00) [8]


>  [1] Eraser ©   (20.08.05 23:30)

Отчего же? Вполне можно и вызвать...


Eraser   (2005-08-20 23:30:00) [9]

Quattro ©   (20.08.05 22:15)
Form1.Create(nil)- а вот это вызов метода Create..но что этот вызов делает то??


Create это конструктор объекта - классовый метод, который нельзя вызывать вот так Form1.Create.


Наверх

Титульная страница Поиск, карта сайта Написать письмо