好像不能在结构体里面定义该结构体类型的指针,那么想用链表该怎么办呢?

解决方案 »

  1.   

    PLine = ^TLine
    TLine = Record
    ID: Integer;
    Next: PLine
    end
      

  2.   

    当然可以定义了.例如双向链表结构:PListNode=^TListNode;
    TListNode=Record
      Next:PListNode;
      Previous:PListNode;
      Data:string;
    end;
    使用的时候,结点本身,Next,Previous都要用New分配内存。删除时释放。
    建议写一个链表类,并不复杂。
      

  3.   

    type
      PLine = ^TLine;
      TLine = Record
        ID: Integer;
        Next: PLine;
      end;编译通过
      

  4.   

    type
      Pointer = ^Tdata;
      Tdata = Record
        ID: Integer;
        Next: pointer;
        .....
      end;
    var s:pointer;
     new(s);
     dispose(s);