怎么给类中的动态数组成员分配空间

如何给类中的动态数组成员分配空间
自定义了一个类,在类中有一个成员是动态数据类型,在一个方法中对这个成员进行赋值,但在编译时在进行初始化的地方出错,出错信息为:Constant object cannot be passed as var parameter。

type DArrayString = array of string;
type
  TE00 = class(TE001)
  function SetArrayLen(ArrayCount: Integer):boolean;
  private
  FItemName: DArrayString;
  public
  property ItemName: DArrayString read FItemName write FItemName;
  end;

function TE00.SetArrayLen(ArrayCount: Integer):boolean;
begin
  SetLength(ItemName, ArrayCount);
end;


------解决方案--------------------
SetLength(FItemName, ArrayCount); 

------解决方案--------------------
SetLength(FItemName, ArrayCount); 
不能直接给属性赋值的,你既然定义了
read FItemName write FItemName
那么直接对FitemName进行读写就可以了
------解决方案--------------------
SetLength(FItemName, ArrayCount);
分配空间,你要赋值的话用
 property ItemName: DArrayString read FItemName write FItemName; 

ItemName[0] := '值'