欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

new

程序员文章站 2022-03-18 18:12:50
...
new 
1. 
var 
    a:^integer;               {在栈内分配内存,指针型a所占的内存大小为4} 
begin 
    new(a);                   {在堆内分配出一大小sizeof(integer)地址赋予a}                             
    a^:=34;                   {地址为a的内存区域(堆内)被赋予值:34}   
    showmessage(inttostr(a^)); 
    dispose(a);               {释放在堆内分配的空间,堆内分配的空间不会自动释放} 
end;                          {a本身在栈中所占的地盘自动归还,这是栈的特点}   

2. 
    var 
    x,y:integer;              {在栈内分配内存,x,y所占的内存大小为4} 
    a:^integer;               {在栈内分配内存,指针型a所占的内存大小为4} 
begin 
    x:=34;                    {x被赋予值:34}     
    a:[email protected];                    {a被赋予x的地址,这个地址当然是位于栈内} 
    y:=a^;                       
    showmessage(inttostr(y)); 
end; 


转载于:https://www.cnblogs.com/haiou327/archive/2010/11/23/1885766.html