E2065 Ungenügende Forward- oder External-Deklaration: '%s' (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)

Diese Fehlermeldung tritt auf, wenn eine forward- oder external-Deklaration einer Prozedur bzw. Funktion oder eine Methodendeklaration in einem Klassen- bzw. Objekttyp vorhanden ist, aber die Prozedur, Funktion oder Methode nicht definiert wird.

Möglicherweise fehlt die Definition, oder ihr Name wurde falsch geschrieben.

Beachten Sie, dass eine Prozedur- oder Funktionsdeklaration im interface-Abschnitt einer Unit einer forward-Deklaration entspricht. Die zugehörige Implementierung (der Quelltext der Routine) muss dann im implementation-Abschnitt erstellt werden.

Ebenso entspricht eine Methodendeklaration in einem Klassen- oder Objekttyp einer forward-Deklaration.


program Produce;

type
  TMyClass = class
  constructor Create;
  end;

function Sum(const a: array of Double): Double; forward;

function Summ(const a: array of Double): Double;
var
  i : Integer;
begin
  Result := 0.0;
  for i:= 0 to High(a) do
  Result := Result + a[i];
end;

begin
end.

Die Definition von Sum hat einen leicht zu erkennenden Schreibfehler.


program Solve;

type
  TMyClass = class
  constructor Create;
  end;

constructor TMyClass.Create;
begin
end;

function Sum(const a: array of Double): Double; forward;

function Sum(const a: array of Double): Double;
var
  i : Integer;
begin
  Result := 0.0;
  for i:= 0 to High(a) do
  Result := Result + a[i];
end;

begin
end.

Lösung: Vergewissern Sie sich, dass die Definitionen Ihrer Prozeduren, Funktionen und Methoden vorhanden und richtig geschrieben sind.