计算机二级:DELPHI中使用Tlist类的补充学习计算机二级考试

文章作者 100test 发表时间 2009:05:22 12:01:48
来源 100Test.Com百考试题网


  2009年下半年全国计算机等级考试你准备好了没?考计算机等级考试的朋友,2009年下半年全国计算机等级考试时间是2009年9月19日至23日。更多优质资料尽在百考试题论坛 百考试题在线题库
  今天我就以一个实际的例子讲述如何正确的使用Tlist类。
  这个例子是:
  有一个链表UserList,这个链表中保存的是用户的信息。在另一个链表CardList,中保存的是用户的牌信息。其中CardList中牌的信息是会随着用户出牌的要求而变化的。但是UserList中的用户信息是不变的。
  首先,我们来定义两个结构
  //用户信息结构
  RuserInfo= record
  UserID:String[20].
  Sex:Boolean.
  Face:Byte.
  Score:Integer.
  End.
  PuserInfo = ^ RuserInfo.
  //用户牌对应结构
  RuserCardInfo = record
  UserInfo: PuserInfo.
  CardInfo:String[20].
  End.
  PuserCardInfo = ^ RuserCardInfo.
  下来我们定义两个链表
  UserList,CardList:Tlist.
  当用户加入这个桌子的时候写入UserList中
  Procedure UserInfoFun(UserID:String.Sex:Boolean.Face:Byte.Score:Integer).
  Var
  p_User:PuserInfo.
  begin
  New(p_User).
  p_User.UserID:= UserID.
  p_User.Sex:= Sex.
  p_User.Face:= Face.
  p_User.Score:= Score.
  UserList.Add(p_User).
  ……
  End.
  当给用户发牌的时候
  Procedure UserCardInfoFun(UserID:String).
  Var
  p_Card: PuserCardInfo
  p_User:PuserInfo.
  I,Count:Integer.
  Flag:Boolean.
  Begin
  //首先从用户链表中找出此用户的信息
  Count:= UserList.Count.
  Flag:=false.
  For I:=0 to Count-1 do
  Begin
  p_User:= UserList.Item[I].
  If UserID = UserID then
  Begin
  Flag:=true.
  Break.
  End.
  End.
  //新生成一个用户牌信息指针,并加入到牌信息链表中
  If Flag then
  Begin
  New(p_Card).
  p_Card. CardInfo:=’H1H2H3H4’.
  p_Card. UserInfo^:= p_User^.
  CardList.Add(p_Card).
  End.
  End.
  当要从链表中删除用户出牌信息时
  Procedure DelUserCardInfoFun(UserID:String).
  Var
  p_Card: PuserCardInfo.
  I,Count:Integer.
  Begin
  Count:= CardList.Count.
  For I:=0 to Count-1 do
  Begin
  p_Card:= CardList.Item[I].
  If p_Card. UserInfo.UserID = UserID then
  Begin
  CardList.Delete(I).
  DisPose(p_Card).
  Exit.
  End.
  End.
  End.
  需要注意的是,我在加入牌信息的时候使用了p_Card. UserInfo^:= p_User^.方法。这个方法是将p_User的内容直接复制给p_Card. UserInfo。也就是说,现在有两份用户信息。所以在后面删除用户牌信息的时候,我直接使用了DisPose函数来销毁。
  其实上面的例子是一个很简单的例子,我想用它作为以前我写的文章的一个补充。希望能对大家使用Tlist有个帮助。

  特别推荐:

  2009年9月全国计算机等级考试时间及科目预告

  2009年上半年全国计算机等级考试参考答案请进入计算机考试论坛

  2009年全国计算机等级考试报名信息汇总

  2009年NCRE考试有新变化

  2009年全国计算机等级考试-大纲

  2009年上半年全国计算机二级考试试题及答案

  2009年上半年全国计算机等级考试试题答案汇总



相关文章


计算机二级DELPHI技巧:DELPHI获取U盘盘符代码计算机二级考试
计算机二级:DELPHI中指针和类TLIST结合计算机二级考试
计算机二级:DELPHI中使用Tlist类的补充学习计算机二级考试
计算机二级DELPHI技巧:DELPHI程序错误类型计算机二级考试
计算机二级DELPHI技巧:delphi设置编译环境计算机二级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛