zoukankan      html  css  js  c++  java
  • Delphi中的ObjectList简单用法一则

          最近项目中需要搞很多个同一类对象的管理和操作,我居然还想用数组array来实现。在当当的教育下,开始研究TObjectList。Delphi中将一系列对象进行数组形式的维护,TObjectList是一个不错的实现方法。他帮助我们添加、计数、删除、释放一个List列表中的内容。
      基本实现不难,自己做一个类,把对象数组像List一样封装到Items中去,然后根据需要实现一些需要的Add/ Count/ Remove/ Clear等操作。实现很简单,直接调用ObjectList的固有函数即可。一个实现的伪代码的例子如下。(修改自最近的Project文件,维护一个TMyClass类的实例列表)Blogbus没有语法高亮功能,很是让人郁闷。

    TReminder = class(TPersistent)
    private
      FFileName: 
    string;
      FItems: TObjectList;
      
    function ReadItems(Index: Integer): TMyClass;
      
    procedure SetItems(Index: Integer; const Value: TMyClass);
    public
      
    property Items[Index: Integer]: TMyClass read ReadItems write SetItems;
      
    function Add(MyClass: TMyClass): Integer;
      
    function Count(): Integer;
      
    constructor Create;
    end;

    implementation

    function TReminder.Add(MyClass: TMyClass): Integer;
    begin
      Result :
    = FItems.Add(MyClass);
    end;

    function TReminder.Count: Integer;
    begin
      Result :
    = FItems.Count;
    end;

    constructor TReminder.Create;
    begin
      
    inherited;
      FItems :
    = TObjectList.Create;

    end;

    function TReminder.ReadItems(Index: Integer): TMyClass;
    begin
      Result :
    = TMyClass(FItems[Index]);
    end;

    procedure TReminder.SetItems(Index: Integer; const Value: TMyClass);
    begin
      FItems[Index] :
    = Value;
    end;
  • 相关阅读:
    Unity4.5版本DLL库名字问题
    Unity路径规划
    Unity 父物体与子物体位置
    Moving in Unity
    C# Xml文件操作,解释见注释
    发个招聘信息
    Unity 视频播放杂谈
    unity中Debug输出控制
    编写可读代码艺术之表面层析
    匈牙利命名法,骆驼命名法(camel),帕斯卡(Pascal)命名法(转)
  • 原文地址:https://www.cnblogs.com/innwin/p/1415114.html
Copyright © 2011-2022 走看看