有没有最大限制,是多少?10亿能放下吗?几百万应该没问题吧?

解决方案 »

  1.   

    你要干吗?要是10亿还用list!!!
      

  2.   

    自己试一下,用一个for语句!
      

  3.   

    MaxListSize = Maxint div 16
      

  4.   

    呵呵~先谢谢各位大侠!
    由于特殊的需要!可能要把大量的数据缓存到本地,当然要采取其它措施,使数据尽量不要上亿,但要求能达到10亿的处理能力。
    我要存储的数据是自定义的Struct,可能有10~20个字段。
    除了TList还有其它的对象可以用吗?
      

  5.   

    另:1.如果我Add一个从TObject继承来的对象的实例,在释放时还用自己逐个dispose吗?
        2.我在窗体的OnClose中调用TList.Clear;TList.Free;在winxp下报地址错误,win2000下没事儿。这是为何?
      

  6.   

    用VirtualList/VirtualListView啊,多少都没有问题
      

  7.   

    来看一下TStringList.Add方法的实现,其中最关键的一个函数procedure TStringList.InsertItem(Index: Integer; const S: string; AObject: TObject);
    begin
      Changing;
      if FCount = FCapacity then Grow;
      if Index < FCount then
        System.Move(FList^[Index], FList^[Index + 1],
          (FCount - Index) * SizeOf(TStringItem));
      with FList^[Index] do
      begin
        Pointer(FString) := nil;
        FObject := AObject;
        FString := S;
      end;
      Inc(FCount);
      Changed;
    end;并没有对容量进行限制
      

  8.   

    http://expert.csdn.net/Expert/topic/1923/1923268.xml?temp=.3507044
    帮帮忙吧
      

  9.   

    要存储这么大的数据,除了用TList还有其它比较好的选择吗?