Type Conversion in C#

[Back] [Main]

using System;
namespace My
{
  /// 
  /// Implicit conversions
  /// 
  public class LongInt
  {                       
    private int val;

    public LongInt()
    {
     val = 0;
    }

    public LongInt(int vl)
    {
     val = vl;
    }

    public static implicit operator
          LongInt(int val)
    {    
     return new LongInt(val);
    }

    public static implicit operator
          int(LongInt x)
    {
     return x.val;
    }

    public static explicit operator
          string(LongInt x)
    {
     return x.val.ToString();
    }


   public static void Main()
   {
    LongInt x = 3;
    int y = x;
    System.Console.WriteLine(y.ToString());
    System.Console.WriteLine((string)x);
   }

  }
}
    

Last updated: 28 may 2007