Difference between revisions of "Cast"
m |
|||
Line 23: | Line 23: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | |||
+ | [[Category:Tutorials]] |
Latest revision as of 18:57, 8 September 2015
Casting class types
Casting to a class type T from a value can be achieved with the following:
cast(T) value
Casting will result in a null reference when the cast cannot be made. (There is no instanceof operator, because it is not needed.)
MyType castedValue = cast(MyType) someValue;
if (castedValue !is null)
{
/* use the casted value */
}
For added safety, the following pattern can be used. This is safer because the casted value may only be used if it holds a valid MyType, where the pattern above would let you use castedValue even if it is null.
if (MyType castedValue = cast(MyType) someValue)
{
/* use the casted value */
}