E2192 定数をオープン配列引数として渡すことはできません (Delphi)

提供: RAD Studio
移動先: 案内検索

エラーと警告のメッセージ(Delphi) への移動

オープン配列パラメータは実際の配列変数または作成済み配列と一緒に指定するか,パラメータの要素型の単一変数と一緒に指定しなければなりません。


program Produce;

  procedure TakesArray(s : array of String);
  begin
  end;


begin TakesArray('Hello Error');
end.

{ このコードでエラーが起きる原因は,配列が渡されるべき手続きに文字列リテラルが提供されるからである。定数からは配列を暗黙に作成できない }


program Solve;

  procedure TakesArray(s : array of String);
  begin
  end;


begin TakesArray(['Hello Error']);
end.

{ この解決方法では配列が明示的に作成されるのでエラーを回避できる }