Delphi 将类型转换为动态数组
鉴于以下情况:Delphi 将类型转换为动态数组,delphi,delphi.net,delphi-2005,Delphi,Delphi.net,Delphi 2005,鉴于以下情况: Type TSomeTypeArray = array of SomeType; var anArray: array of SomeType; function GetSomeTypeArray: TSomeTypeArray; 我想写anArray=GetSomeTypeArray()
Type
TSomeTypeArray = array of SomeType;
var
anArray: array of SomeType;
function GetSomeTypeArray: TSomeTypeArray;
我想写anArray=GetSomeTypeArray()但是编译器不喜欢它。
在不更改anArray
的类型或GetSomeTypeArray
的返回类型的情况下,如何将TSomeTypeArray
类型转换为SomeType数组
?您不能。您需要将anArray
声明为TSomeTypeArray
类型,然后它就可以工作了
或者,您可以将结果存储到另一个类型为TSomeTypeArray
的数组中,然后在anArray
上调用SetLength
以确定返回数组的长度。最后,通过两个数组循环,将anArray
的元素设置为返回数组的元素。您可以键入作业的左侧:
TSomeTypeArray(anArray) := GetSomeTypeArray();
是的,对不起。好吧,这是唯一的办法,因为没有其他人提出替代方案。左侧打字