大家好,我想请教一个关于动态数组的问题,源码如下://(1)********此时编译没有问题*******************//
procedure TForm1.Button1Click(Sender: TObject);
var
  a,b: array of String;
begin
  SetLength(a,20);
  a[0] := 'Hello,world!';
  ShowMessage(a[0]);
  b := a;
  showmessage(inttostr(length(b)));
end;//(2)********但下面不知道为何总是编译出错*******//
procedure TForm1.Button1Click(Sender: TObject);
var
  a : array of String;
  b : array of String;
begin
  SetLength(a,20);
  a[0] := 'Hello,world!';
  ShowMessage(a[0]);
  b := a;
  showmessage(inttostr(length(b)));
end;代码段(2)在编译时总是提示"Incompatible types",不知是何原因,请各位高手指教,谢谢!!