E2016 Array-Typ erforderlich (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)

Diese Fehlermeldung wird angezeigt, wenn Sie versuchen, einen Index in einen Operanden zu setzen, der kein Array ist, oder wenn Sie an einen offenen Array-Parameter ein Argument übergeben, das kein Array ist.


program Produce;
var
  P: ^Integer;
  I: Integer;
begin
  Writeln(P[I]);
end.

Wir versuchen, einen Index auf einen Zeiger auf integer anzuwenden – in C wäre dies zulässig, aber nicht in Delphi.


program Solve;
type
  TIntArray = array [0..MaxInt DIV sizeof(Integer)-1] of Integer;
var
  P: ^TIntArray;
  I: Integer;
begin
  Writeln(P^[I]);   (*Auch P[I] wäre korrrekt*)
end.

In Delphi muss dem Compiler mitgeteilt werden, dass P auf ein Array von ganzen Zahlen zeigen soll.