c# - the comparison between as and cast -


possible duplicate:
direct casting vs 'as' operator?

anyone can give comparison between , cast?

a straight cast fail if object being casted not of type requested. as-cast instead return null. example:

object obj = new object(); string str = (string)obj; // throws classcastexception 

however:

object obj = new object(); string str = obj string; // sets str null 

when object being casted is of type casting to, result same either syntax: object casted.

note should avoid "as-and-invoke" pattern:

(something sometype).foo(); 

because if cast fails, throw nullreferenceexception instead of classcastexception. may cause chase down reason something null, when it's not! uglier, better code

((sometype)something).foo(); 

will throw classcastexception when object referenced something cannot converted sometype, , nullreferenceexception when something null.


Comments

Popular posts from this blog

android - Spacing between the stars of a rating bar? -

html - Instapaper-like algorithm -

c# - How to execute a particular part of code asynchronously in a class -