tw0868.pp 714 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. {$mode objfpc}
  2. {$H+}
  3. type
  4. TTreeData = record
  5. Key: String;
  6. Data: Integer;
  7. end;
  8. TNode = class
  9. data: TTreeData;
  10. end;
  11. TStrIntDic = class
  12. FNode: TNode;
  13. destructor Destroy; override;
  14. procedure Add(const Key: String; Data: Integer);
  15. end;
  16. destructor TStrIntDic.Destroy;
  17. begin
  18. FNode.Free;
  19. inherited Destroy;
  20. end;
  21. procedure TStrIntDic.Add(const Key: String; Data: Integer);
  22. var
  23. T: TTreeData;
  24. begin
  25. T.Key:=Key;
  26. T.Data:=Data;
  27. FNode:=TNode.Create;
  28. FNode.data:=T;
  29. end;
  30. procedure Test;
  31. var
  32. SD: TStrIntDic;
  33. begin
  34. SD:=TStrIntDic.Create;
  35. try
  36. SD.Add('asdf', 2);
  37. finally
  38. SD.Free;
  39. end;
  40. end;
  41. begin
  42. Test;
  43. write('Test for bug 868 completed.');
  44. {readln;}
  45. end.