As
Deutsch · English · Español · Français · Suomi
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.
see also
From the Free Pascal wiki, page "As", as it stood on 2022-08-06 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
