В Delphi: В чем разница между конструктором и функцией класса для создания объекта?В чем разница между конструктором и функцией класса
TPersonnel = class(TPersistent)
public
class function Create: TPersonnel; overload;
constructor Create(APersonelID: integer); overload;
end;
class function TPersonnel.Create: TPersonnel;
begin
result := inherited Create;
end;
constructor TPersonnel.Create(APersonelID: integer);
begin
inherited Create;
end;
Я знаю, что функция класса Create скроет конструктор по умолчанию.
Независимо конструктор Создать параметр
Есть ли причина, по которой я должен использовать конструктор?
В моем примере функция класса «Создать» и «Конструктор». У обоих есть одна и та же задача. – Mohamad
@Mohamad: Да, но в вашей функции класса вы вызываете конструктор (TPersistent), поэтому в обоих случаях конструктор используется для создания экземпляра класса ... – HeartWare
@Mohamad Только конструктор может создать экземпляр нового экземпляра. –