[fpc-pascal] TObject
Carsten Bager
carsten at beas.dk
Tue Nov 4 10:56:58 CET 2008
>
> Here the Data getter is called, ie, hSafeVar, because you are reading a
> value from it.
>
> Use a function as a getter instead of a class member. Btw getters and
> setters have not the same syntax, you need to create two different methods.
Was it this you meant? Now I cannot compile. If I change rSafeVar (In the
property declaration) to hSafeVar it compiles.
Carsten
-------------------------------------------------
program safevartest;
{$mode objfpc}
Uses
sysutils; {System}
Type
SafeVar_typ = packed record
week:byte;
end;
TSafeVar=class(TObject)
Private
hSafeVar:SafeVar_typ;
Procedure wSafeVar(data:SafeVar_typ);
Function rSafeVar(data:SafeVar_typ):SafeVar_typ;
Public
constructor create;
destructor destroy; override;
property data:SafeVar_typ read rSafeVar write wSafeVar;
Published
end;
var
SafeVar:TSafeVar;
constructor TSafeVar.create;
Begin
inherited Create;
fillchar(hSafeVar,sizeof(SafeVar_typ),chr(0));
End;
destructor TSafeVar.destroy;
Begin
inherited destroy;
End;
Procedure TSafeVar.wSafeVar(data:SafeVar_typ);
Begin
WriteLn('Write');
End;
Function TSafeVar.rSafeVar(data:SafeVar_typ):SafeVar_typ;
Begin
WriteLn('Read');
End;
Begin
SafeVar:=TSafeVar.create;
SafeVar.data.week:=1;
SafeVar.free;
End.
Med venlig hilsen
Carsten Bager
BEAS A/S
Brørupvænget 10
DK-7650 Bøvlingbjerg
Tlf. : +45 9788 5222 Fax : +45 9788 5434
www.beas.dk
More information about the fpc-pascal
mailing list