E2025 Prozedur kann keinen Ergebnistyp besitzen (Delphi)
Nach oben zu Fehler- und Warnungsmeldungen (Delphi)
Sie haben eine Prozedur deklariert, ihr aber einen Ergebnistyp gegeben. Entweder wollten Sie eigentlich eine Funktion deklarieren, oder Sie sollten den Ergebnistyp löschen.
program Produce;
procedure DotProduct(const A,B: array of Double): Double;
var
I: Integer;
begin
Result := 0.0;
for I := 0 to High(A) do
Result := Result + A[I]*B[I];
end;
const
C: array [1..3] of Double = (1,2,3);
begin
Writeln( DotProduct(C,C) );
end.
Hier sollte DotProduct eigentlich eine Funktion sein. Es wurde nur aus Versehen das falsche Schlüsselwort angegeben.
program Solve;
function DotProduct(const A,B: array of Double): Double;
var
I: Integer;
begin
Result := 0.0;
for I := 0 to High(A) do
Result := Result + A[I]*B[I];
end;
const
C: array [1..3] of Double = (1,2,3);
begin
Writeln( DotProduct(C,C) );
end.
Achten Sie einfach darauf, einen Ergebnistyp festzulegen, wenn Sie eine Funktion deklarieren, und keinen Ergebnistyp, wenn Sie eine Prozedur deklarieren.