Fxxx私有类名称前缀约定来自什么?

时间:2013-01-10 22:28:29

标签: delphi

在C ++ / C#中,私有类变量的常见约定是m_MyPrivateVar,我相信“ m _ ”代表“我的”(我可能错了)。

在Delphi中,私有类变量以 F 开头,例如FHandle等。

F是什么意思?富? :)

1 个答案:

答案 0 :(得分:18)

有些命名约定不会在代码中丢失。

这是一个例子,指出为什么这很有用。

// Types begins with T
TFoo = class
strict private
  // sometimes I saw strict private fields beginning with underscore
  // I like this too 
  _Value : string;
private
  // private class vars are Fields and therefore begins with F
  FValue : string;
  function GetValue : string;
public
  property Value : string read GetValue write FValue;

  // Parameters should NOT begin with P (P is for Pointer) but with A
  // because "i will pass A value" :o)
  function GetSomething( const AValue : string ) : string;
end;

function TFoo.GetValue : string;
begin
  Result := '*' + FValue + '*';
end;    

function TFoo.GetSomething( const AValue : string ) : string;
var
  // IMHO there is no naming convention to Local vars
  // but mine begins with L
  LValue : string;
begin

  LValue { local var } := 
    Value   { property via getter }  + 
    AValue  { parameter } + 
    FValue  { field };

  Result := LValue;
end;