E2086 Typ '%s' ist nicht vollständig definiert (Delphi)
Nach oben zu Fehler- und Warnungsmeldungen (Delphi)
Dieser Fehler tritt auf, wenn Sie einen Typ referenzieren, der noch nicht vollständig definiert ist, oder wenn Sie in einem type-Abschnitt eine forward-Deklaration für eine Klasse verwenden, ohne später den Typ zu deklarieren.
program Produce; type TListEntry = record Next: ^TListEntry; (*<-- Hier die Fehlermeldung*) Data: Integer; end; TMyClass = class; (*<-- Hier die Fehlermeldung*) TMyClassRef = class of TMyClass; TMyClasss = class (*<-- Schreibfehler ...*) (*...*) end; begin end.
In diesem Beispiel wird ein Record-Typ referenziert, der noch nicht definiert ist. Außerdem ist wegen eines Tippfehlers die Klassendeklaration von TMyClass unvollständig.
program Solve; type PListEntry = ^TListEntry; TListEntry = record Next: PListEntry; Data: Integer; end; TMyClass = class; TMyClassRef = class of TMyClass; TMyClass = class (*...*) end; begin end.
Als Lösung für das erste Problem können Sie eine Typdeklaration für einen Hilfszeiger einführen. Das zweite Problem wird dadurch behoben, dass TMyClass richtig geschrieben wird.