クラスを動的配列で使うにはどう宣言すればいいのでしょうか?

type
TState = class
name,
adr: string;
end;

var
StateArray: array of TState;

SetLength( StateArray, 10 );
StateArray[0].name := 'モナー'; ←こういう使い方がしたい

これではコンパイル出来ません。 お願いします。