Hi,

I cannot find it in the docs (probably not looking in the right place).

Which variables/class-fields are initialized by the compiler?

My understanding is that:
- global vars are initialized (zero, false, empty string etc)
- local vars are not

But what about class fields?

Typically I do

type
  TA = Class
  private
    FInt: Integer;
    FBool: Boolean;
    FString: String;
    FPoint: TPoint;
   ....
   end;

constructor TA.Create;
begin
  FInt:=0;
  FBool:=False;;
  FString:='';
  FPoint:=Point(0,0);
  ...
end;

1. Is this necessary, and if not, for which types can it be omitted?
(skip if you know 2)
2. Where is it documented?
3. Does it work the same as in Delphi?

Bart
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to