Вниз
Скачать: CL | DM;

class   Найти похожие ветки 

← →
Vitalik   (2003-05-27 14:04) [0]

Привет!
Подскажите пожалуйста, для чего ставится слово class перед описанием метода в классе?
В справке это дело описано в разделе
Object Pascal Reference->Classes and objects->Class
references->Class methods,
но я ничего там не понял.
Пример:
TFigure = class
public
class function Supports(Operation: string): Boolean; virtual;
class procedure GetInfo(var Info: TFigureInfo); virtual;
...
end;


class procedure TFigure.GetInfo(var Info: TFigureInfo);

begin
...
end;

Так вот для чего это слово class перед описанием процедур?
Какими становятся эти процедуры, и для чего?
Спасибо!


← →
MBo ©   (2003-05-27 14:08) [1]

если коротко - классовые методы не требуют создания экземпляра, и в них нельзя использовать поля объекта.


← →
Skier ©   (2003-05-27 14:10) [2]

>Vitalik (27.05.03 14:04)

> Так вот для чего это слово class перед описанием процедур?

При таком объявлении :

1) Неявный параметр Self будет указывать не на экземпляр
класса, а на сам класс
2) Эти методы можно вызывать (не всегда !) без создания
экземпляра класса (см. TObject.ClassName).





Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
3-13019
Dms
2003-05-16 10:55
2003.06.05
Пустая колонка в запросе


1-13305
Seldon
2003-05-24 22:36
2003.06.05
Unicode -> String


3-13066
Sergey-ZZZ
2003-05-15 16:22
2003.06.05
строка в DBGrid


14-13380
Дмитрий К.К.
2003-05-21 06:45
2003.06.05
Именинники 21 мая


3-13064
Brain Force
2003-05-17 12:40
2003.06.05
Получить в V:Variant занчение полей текущей записи




   Наверх