Показать сообщение отдельно
  #3  
Старый 04.05.2010, 03:29
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,100
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну, для этого достаточно было бы прочитать хоть одну толковую книжку по Дельфи. И такого вопроса бы и не возникло.

Однако, замечание.
Так можно вызвать функцию только у объекта, то бишь экземпляра класса. А вот если ты ее опишешь как функцию класса, то тогда ее можно будет вызвать у самого класса без создания его, класса, экземпляра. Но в этом случае нельзя обращаться к переменным класса.

Пример:
Код:
type
  TMyMathClass = class
  public
    X : Double;
    class function ClassSQR(x : Double) : Double;
    function ObjectSQR : Double;
  end;

...

  class function TMyMathClass.ClassSQR(x : Double) : Double;
  begin
    Result := x * x;
  end

  function TMyMathClass.ObjectSQR : Double;
  begin
     Result := X * X;
  end;


...

var
  C : TMyMathClass;
begin
  ShowMessage(FloatToStr(TMyMathClass.ClassSQR(2)));

  C := TMyMathClass.Create;
  C.X := 2;
  ShowMessage(FloatToStr(C.ObjectSQR));
  C.Free;
end;
Ответить с цитированием