TList中使用的是指针吗?

zing21cn 2010-07-20 10:23:33
我想用 t_s : TStrings 填充一个L1: TList.
其中,t_s 的值每次都不一样,L1.add(t_s)填充完后我发现,L1的每一个值是最后一次 t_s 中的值,是不是 L1只存放地址。当t_s的值发生改变也就只有最后一次的值了。

可我想把每次的值都填进去,以备遍历使用,该怎么办啊 ?
...全文
50 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
taxi 2010-07-20
  • 打赏
  • 举报
回复
是的,所以TList中的TStrings的值都是一样的,就是你最后一次更新的值,要解决这个问题可以像楼上那样。
sanguomi 2010-07-20
  • 打赏
  • 举报
回复

var
Str1, Str2: TStrings;
begin
Str1 := TStringList.Create;
Str2 := TStringList.Create;

Str1.Add('1');
Str1.Add('2');

Str2.Assign(Str1); // Str2 保存

Str1[1] := '11';

Str1.Free;
Str2.Free;
end;
zing21cn 2010-07-20
  • 打赏
  • 举报
回复
而我又必须使用 TStrings 或 TStringList

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧