Вниз
Скачать: 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.012 c
14-13376
Doom
2003-05-19 23:43
2003.06.05
Диаметр окружности, вписанной в многоугольник


1-13233
zeppelin
2003-05-27 13:18
2003.06.05
TreeView


3-13097
гончий
2003-05-19 10:10
2003.06.05
Я тут недавно потестировал скоростные возможности EasyTable...


6-13364
Garmahis
2003-04-04 22:02
2003.06.05
Почта по HTTP


6-13345
Puzzle
2003-04-02 12:32
2003.06.05
Как определить, что Dial-up соединение уже установлено?




   Наверх