鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 编程语言开发 > delphi > >

delphi中string的管理

来源:互联网 作者:佚名 时间:2017-09-08 09:54
delphi对string采取的是copy on write的处理思路, 即在修改的时候才会发生copy,否则只是原来的引用++; 比如: 1 var 2 str1 : string ; 3 str2 : string ; 4 begin 5 str1 := ' changym ' ; 6 // 分配内存并让str1计数管理; 7 8 str2 := str1; 9 //并没

delphi对string采取的是copy on write的处理思路, 即在修改的时候才会发生copy,否则只是原来的引用++;

比如:

 1 var
 2     str1 : string;
 3     str2 : string;
 4 begin
 5     str1 := 'changym';  
 6     //分配内存并让str1计数管理;
 7 
 8     str2 := str1;  
 9     //并没有分配内存, 而是让str2指向str1的内存, str1的计数++10 
11     str2 := 'test';
12     //这个时候才为str2分配新的内存存储test, 且开始自己管理引用计数;并且str1的计数--;
13 end;

 

网友评论
<