私は文字列、バリアントの配列の辞書を取る関数を持っていると思います。だから、で呼び出すことができます。動的配列を持つ辞書を値型として宣言できますか?
searchDictionary := TDictionary<string, array of variant>;
searchDictionary.Add('KEY_NAME', ['X01%', '%D01']);
aValue := TDtoClass.Search(searchDictionary)
Tsearchが公開するクラスです私は現在
searchDictionary := TDictionary<string, TList<variant>>.Create;
searchDictionary.Add('BIN_NAME', TSearch.Values(['X01%', '%D01']));
によってこれを実現しています:
class function TSearch.Values(const arguments: array of variant): TList<variant>;
var
list : TList<variant>;
item: variant;
begin
list := TList<variant>.Create;
for item in arguments do
begin
list.Add(item);
end;
Result := list;
end;
私がやりたいです:
searchDictionary.Add('BIN_NAME', ['X01%', '%D01']);
代わりに:
searchDictionary.Add('BIN_NAME', TSearch.Values(['X01%', '%D01']));
ご協力いただきますようお願い申し上げます。
動作していない、正確には何?それはコンパイルされません(そしてどの位置に)? – jpfollenius
.Add(名前:文字列; a:constの配列)? – Marck
実際、これはオープンアレイではなくダイナミックアレイです。オープン配列は、プロシージャのパラメータとしてのみ存在します。私は質問のタイトルを更新しました。 –