Delphi. , , ( ) , , . , CustomLabel:
type
CustomLabel = class
private
FBold: Boolean;
protected
property Bold: Boolean read FBold write FBold;
end;
CustomLabel:
type
TAccessCustomLabel = class(CustomLabel);
procedure SetBold(customLabel: CustomLabel)
begin
TAccessCustomLabel(customLabel).Bold := True;
end;
as, TAccessLabel. AngleLabel NormalLabel, , CustomLabel , , Bold . , :
type
AngleLabel = class(CustomLabel)
public
property Bold;
end;
, . , , .
- ++, , Delphi, , .
, Delphi. ++ , Delphi, , .
class AccessCustomLabel: public CustomLabel
{
friend void SetLabel(CustomLabel* customLabel);
};
:
void SetLabel(CustomLabel* customLabel)
{
reinterpret_cast<AccessCustomLabel*>(customLabel)->bold = true;
}
undefined, , . CustomLabel, , Bold AccessCustomLabel, , Bold CustomLabel.
Delphi ++ punning. # Java; , , CustomLabel AccessCustomLabel, . . .