Mega Code Archive

 
Categories / C# / Language Basics
 

Use is to avoid an invalid cast

/* C#: The Complete Reference  by Herbert Schildt  Publisher: Osborne/McGraw-Hill (March 8, 2002) ISBN: 0072134852 */ // Use is to avoid an invalid cast.    using System;    class A {}  class B : A {}    public class CheckCast {    public static void Main() {      A a = new A();      B b = new B();        // Check to see if a can be cast to B.      if(a is B)  // if so, do the cast        b = (B) a;      else // if not, skip the cast        b = null;        if(b==null)         Console.WriteLine("Cast b = (B) a is NOT allowed.");      else        Console.WriteLine("Cast b = (B) a is allowed");    }  }