我最近一直在写不同的课程,我注意到我无意中使用field
和property
标识符来读/写它们,我想知道如果这样做有什么陷阱?
让我们以一个基本类为例:
TMyClass = class
private
FName: string;
FID: Integer;
public
constructor Create(AName: string);
destructor Destroy; override;
published
property Name: string read FName write FName;
property ID: Integer read FID write FID;
end;
标识符的意思是,field
例如FName
和,标识符的意思是和,例如。FID
property
Name
ID
如果我没记错的话,发布的全部目的property
是能够在编写类的单元之外访问它。这当然意味着field
标识符应该在编写类的单元中使用,毕竟你不能field
在类之外访问这些标识符。
这是我注意到在某些程序(私有或受保护)中我没有使用FName
or的地方FID
,而是使用了property
等效的Name
和ID
- 或有时混合使用。
到目前为止,我没有发现任何问题,实际上我通常会使用FName
,FID
但就像我说的那样,由于某种原因无意中没有这样做。
这是不好的做法还是会导致更险恶的事情?
谢谢。