Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi,

ich habe eine Klasse geschrieben.

Etwa so:

 
TMyClass = class
public
constructor Create(i: integer);
private
myint: integer;
end;

constructor TMyClass.Create(i: integer);
begin
myint := i;
end;
[/PHP]

So, der Konstruktor wird ganz brav aufgerfufen, jedoch bekomme ich bei der Zuweisung im Konstruktor EAccessViolation. Self ist komischer Weise auch nil.

Was mach ich denn falsch?

BTW: warum kann man keine Breakpoints mehr im Konstruktor setzen, wenn man ihn virtual macht?

Geschrieben

 

TMyClass = class 	

public 	

  constructor Create(i: integer); 	

private  	

  myint: integer; 	

end; 	


constructor TMyClass.Create(i: integer); 	

begin 	

  [b]inherited create;[/b]

  myint := i; 	

end;	

Du musst den Konstruktor der Grundklasse (in diesem Fall TObject) auch erst noch aufrufen, sonst hast du ja nix, was du erben kannst ;)

EDIT:

virtual heisst, es gibt ihn gar nicht wirklich, sondern er kann nur von den Folgeklassen Überschrieben und Implementiert werden. Ist quasi so ne Art Platzhalter. Die Onlinehilfe sagt dir dazu ne Menge ;)

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...