So, tut mir leid, dass ich mich erst jetzt wieder melde, ihr habt natürlich recht, ich hätte das ganze noch genauer gestalten müssen, also:
unit 1:
procedure TForm1.Button1Click(Sender: TObject);
Var HauptKlasse:THauptKlasse;
begin
HauptKlasse:=THauptKlasse.Create;
HauptKlasse.xInKindKlasse;
end;
unit 2:
interface
type THauptKlasse=class(TObject)
protected
x:integer;
public
procedure xInKindKlasse;
end;
implementation
uses unit3;
procedure THauptKlasse.xInKindKlasse;
var KindKlasse:TKindklasse;
begin
x:=10; //<---x wird hier auf 10 gesetzt
KindKlasse:=TKindKlasse.create;
KindKlasse.xInhalt;
end;
end.
unit 3:
interface
uses unit2,dialogs,sysutils;
type TKindKlasse=class(THauptKlasse)
public
procedure xInhalt;
end;
implementation
procedure TKindKlasse.xInhalt;
begin
Showmessage(inttostr(x)); // der Inhalt ist 0, also x=0... Wieso?
end;
end.