首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

TList中保留Pointer(String)是否安全

2013-07-04 
TList中保存Pointer(String)是否安全varlst : Tlist/////创建示例和初始化lst等等procedure test()vartmp

TList中保存Pointer(String)是否安全
var
  lst : Tlist
/////创建示例和初始化lst等等


procedure test()
var
  tmp : string;
begin
  tmp := 'abc';
  lst.add(pointer(tmp));
end;
  

procedure show()
begin
  //对lst的item转回string类型进行操作,是否安全
end;

请问这样将string直接转pointer添加到tlist中,是对原string变量的引用计数增加?还是复制创建了新的内存,是否有内存泄漏或者非法内存访问隐患,如果有,如何验证??
我问的问题可能不太明确,我是想知道函数中生命的局部变量string作为pointer添加到TList里之后,函数结束了局部变量string会被释放,会不会影响TList里的那个pointer(string)
不会,string是生存期自管理类型。

热点排行