As
From Lazarus wiki
Jump to navigationJump to searchThe printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
│
Deutsch (de) │
English (en) │
español (es) │
suomi (fi) │
français (fr) │
The operator as
performs a conditional typecast.
The word as
is a reserved word in {$mode Delphi}
and {$mode objFPC}
.
operation
as
requires a class
or (COM) interface as the first argument and a class or interface reference as the second.
The expression child as super
is equivalent to the expression and statement:
super(child)
if not assigned(child) and_then not child is super then
begin
raise exception.create(sErrInvalidTypecast);
end;
Warning: Typecasting a nil
pointer will not raise an exception.
However, trying to de-reference nil
by attempting to access an attribute or method will cause a RTE.
application
as
ensures a typecast is legit.
as
is one of the operators that can not be overloaded.