【发布时间】:2018-06-22 18:48:15
【问题描述】:
我有一个枚举类型,我需要传递一个这种类型的数组作为参数:
type
TTest = (a,b,c);
procedure DoTest(stest: TArray<TTest>);
当我编译时
DoTest([a]);
我收到以下错误:
错误:E2010 不兼容的类型:'System.TArray' 和 'Set'*
那么,如何在不创建TArray<TTest> 类型的变量的情况下调用DoTest?
【问题讨论】:
-
TArray<Ttest>不是开放数组参数 -array of Ttest会。 -
@StefanGlienke,是的,这显然是对如何调用此类参数的误解。
-
你的问题很奇怪。想想看。 “我有一个接受
TArray<TTest>的函数。如何在不传递TArray<TTest>的情况下调用它?”当然,很明显你不能这样做。更改函数以接受开放数组参数。 -
很难调和声称不知道这个问题的标题是什么开放数组参数。你只是完全不小心输入了这些词。认真地阅读文档。不要放弃。如果您阅读文档,这会容易得多。
-
当你说他时,你的意思是我还是你在共享一个帐户?
标签: delphi delphi-xe5