Как правильно вызвать конструктор базового класса из унаследованного класса в Delphi Phrism?

У меня есть два класса - базовый класс и унаследованный класс следующим образом.

Базовый класс:

TAlarm = class(System.Object)
private:
protected:
public:
    constructor (tag:TTagname);
end;

унаследованный класс:

  TAlarmMsg = class(TAlarm)
  public
    constructor (aname:string);
    method GetAlarmMsg:string; override;
    method SendMsg(msg:string);
  end;

конструкторы:

constructor TAlarm(tag:TTagname);
begin
  Tagname := tag;
end;

constructor TAlarmMsg(aname:string);
begin
  inherited TAlarm(aname); <========Here is my problem.
  name := aname.ToCharArray;
end;

Независимо от того, что и как я вызываю или поиграйте с унаследованным конструктором, я продолжаю получать следующие сообщения об ошибках, когда компилирую исходный файл:

- Self не может быть доступен до завершения унаследованного конструктора. И / ИЛИ - Не удается найти подходящий конструктор в базовом классе, поэтому требуется ручной вызов унаследованного

Между прочим, я потратил добрые полдня на изучение этой проблемы и нашел хорошую информацию в Интернете. Пока ничего не помогает. Я даже нашел веб-страницу, которая прямо говорит о конструкторах в Википедии Delphi Prism ( http://prismwiki.embarcadero.com/en/Constructors ).

Итак, как бы вы сделали это правильно? Спасибо,

5
задан ThN 29 August 2011 в 20:44
поделиться