4

鉴于以下情况:

Type
  TSomeTypeArray = array of SomeType;

var
  anArray: array of SomeType;

function GetSomeTypeArray: TSomeTypeArray; 

我想写anArray = GetSomeTypeArray();,但编译器不喜欢它。在不更改类型anArray或返回类型的情况下,GetSomeTypeArray我如何类型转换TSomeTypeArrayarray of SomeType

4

2 回答 2

6

您可以对作业的左侧进行类型转换:

TSomeTypeArray(anArray) := GetSomeTypeArray();
于 2011-04-24T10:18:51.767 回答
3

你不能。您需要声明anArray为 type TSomeTypeArray,然后它应该可以工作。

或者,您可以将结果存储到另一个类型的数组中,TSomeTypeArray然后调用返回数组的长度SetLengthanArray最后循环遍历两个数组,将 的元素设置anArray为返回数组的元素。

于 2011-04-12T19:46:52.677 回答