俺だったらこうするな。FSum は Add などのリスト操作を行うたびに更新。

type
 TIntList = class(TObject)
 private
  FIntDatas: array of Integer;
  FSum: Integer;
  function GetItem(Index: Integer): Integer;
  procedure SetItem(Index: Integer; Value: Integer);
 public
  procedure Add(Value: Integer);
  procedure Delete(Index: Integer);
  procedure Insert(Index: Integer; Value: Integer);
  property Sum: Integer read FSum;
  property Items[Index: Integer]: Integer read GetItem write SetItem;
 end;

>>561
もう飽きた。よそのスレでやれ。