How to call correctly base class constructor from inherited class in Delphi Phrism?
I have two classes - base class and inherited class as follows.
Base Class:
TAlarm = class(System.Object)
private:
protected:
public:
constructor (tag:TTagname);
end;
inherited class:
TAlarmMsg = class(TAlarm)
public
constructor (aname:string);
method GetAlarmMsg:string; override;
method SendMsg(msg:string);
end;
constructors:
constructor TAlarm(tag:TTagname);
begin
Tagname := tag;
end;
constructor TAlarmMsg(aname:string);
begin
inherited TAlarm(aname); <========Here is my problem.
name := aname.ToCharArray;
end;
No matter what or how I call or play around with inherited constructor, I keep getting the following error messages when I compile the source file.
- Self cannot be accessed before the inherited constructor has finished. And/OR - Cannot find appropriate constructor in base class so manual call to inherited is required
By the way, I have spent good half a day researching on this issue and have found good information online. Nothing helps so far. I even found the webpage that directly talks about constructors on Delphi Prism Wikipedia ( http://prismwiki.embarcadero.com/en/Constructors ).
So, how would you do it cor开发者_JAVA技巧rectly? Thanks,
The statement
inherited constructor(aName);
should do it.
精彩评论