如下:
  pstudent=^tstudent;
  tstudent=record
    id:integer;
    name:string;
  end;
  procedure addtreeview;
  var
    p:pstudent;
    node:ttreenode;
  begin
    for i:=0 to 100 do
    begin
      new(p);
      node:=treeview1.items.add(nil);
      p^.id:=i;
      p^.name:='***';
      node.data:=p;
    end; 
  end;
  请问我要不要自己释放这个指针。我上面写的对不对 ?
  本人刚刚来,没分啊。热心朋友请帮下。

解决方案 »

  1.   

    的确需要人工释放p:pstudent占用的空间————————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    ————————————————————————————————————
      

  2.   

    在:TreeView.OnDeleteNode(好像是这个事件吧,名字记不起了)
    Dispose(Node.Data);//不要用FreeMem, 如果你不知道FreeMem和Dispose的区别的话
      

  3.   

    用Dispose,看delphi开发人员指南。自己使用的内存自己回收。看delphi算法和数据结构……