2013-06-19 52 views
0

因此,假设这个代码工作。帕斯卡的理解

{***Start declaration of TMakeProd ***} 

TListMakeProd = class (TListNF) 
    procedure SortProcProdSeqNum; 
    procedure LoadFromRep(aFileRep, aNo : String); 
    function Find(aMakeProdID : Integer) : TMakeProd; 
    function FindObj(aMakeProd : TMakeProd) : TMakeProd; 
end; 

TMakeProd = class (TProduct) 
private 
    FMakeProductID : Integer; 
    FProdLotSize : Longint; 

public 
    LiProcProd : TListProcProd; 
      {Load from a database.} 
{ procedure SortLiProcProdSeqNum; } 
    constructor Init(aMakeProductID: Integer; aProdLotSize: Longint); 
    destructor Done; override; 
    destructor Destroy; override; 
    property MakeProductID : Integer read FMakeProductID write FMakeProductID ; 
    property ProdLotSize : Longint read FProdLotSize write FProdLotSize ; 
    function findNextProcProd(aProcProd: TProcProd) : TProcProd; 

{ create function with return if required. } 
end; 

我不明白的是本声明LiProcProd : TListProcProd; 我知道TListProcProd是一类,其他的一切我理解,但这一部分,我不也是这仅仅是一个类的声明,并承担所有的类已妥善申报

+0

这只是一个公共财产,什么是理解? –

+0

@ et1975 Public * field *,对吗?不是属性,因为它没有读/写限定符,'property'关键字和一个支持它的字段(显然除外) – Thomas

+0

我不知道pascal我没有解释这是一个变量声明类的类x)谢谢 – Mokmeuh

回答

1
type 
    TMakeProd = class(TProduct) 
    .... 
    LiProcProd : TListProcProd; 
    .... 
    end; 

在此声明中,LiProcProd是一个公共字段。这由documentation描述。