public static Nybble operator ++(Nybble ob) { Nybble result = new Nybble(); result.SetValue(ob.Value + 1); return(result); }
static void Main() { Nybble a = new Nybble(5); Nybble b = new Nybble(4); Nybble c = a + b; Console.WriteLine("a + b = {0} + {1} = {2}", a.GetValue(), b.GetValue(), c.GetValue()); int d = 15; c = a + d; Console.WriteLine("a + d = {0} + {1} = {2}", a.GetValue(), d, c.GetValue()); c = (Nybble)d; Console.WriteLine("(Nybble)d = (Nybble){0} => {1}", d, c.GetValue()); d = (int)c; Console.WriteLine("(int)c = (int){0} => {1}", c.GetValue(), d); Console.WriteLine("a > b = {0}", a > b); Console.WriteLine("a = {0}, a += 5 =>", (a += 5).GetValue()); Console.ReadLine(); }
public static Nybble operator +(Nybble ob1, int ob2) { Nybble result = new Nybble(); result.SetValue(ob1.Value + ob2); return(result); }
public void OverloadTest() { var a = new Nybble.Nybble(4); var b = new Nybble.Nybble(15); var c = b - a; Assert.AreEqual(c, 11); Assert.AreNotEqual(c,12); c = c + a; Assert.AreEqual(c,15); Assert.IsFalse(c<a); }
public static void Main() { try { Nybble a = new Nybble(2); Nybble b = new Nybble(12); Nybble c = new Nybble(4); Nybble d = new Nybble(5); Nybble e = 15; Nybble f; f = 15; int t; object z = 10; Console.WriteLine(); Console.WriteLine("Object type: {0}", a.GetTypeCode().ToString()); Console.WriteLine("a: " + (int) a); Console.WriteLine("b: " + (int) b); Console.WriteLine("c: " + (int) c); Console.WriteLine("d: " + (int) d); Console.WriteLine("e: " + (int) e); // use a Nybble in an if statement if (a < b) Console.WriteLine("a is less than b\n"); // Add two Nybbles together c = a + b; Console.WriteLine("c after c = a + b: " + (int) c); // Add an int to a Nybble a += 5; Console.WriteLine("a after a += 5: " + (int) a); Console.WriteLine(); // use a Nybble in an int expression t = a*2 + 3; Console.WriteLine("Result of a * 2 + 3: " + t); Console.WriteLine(); // illustrate int assignment and overflow a = 1; Console.WriteLine("Result of a = 1: " + (int) a); //a = 19; //Console.WriteLine("Result of a = 19: " + (int)a); overflow error Console.WriteLine(); // use a Nybble to control a loop Console.WriteLine("Control a for loop with a Nybble."); for (a = 0; a < 15; a++) Console.Write((int) a + " "); Console.WriteLine(); //Compare 2 Nybble instanses, "a" and "b" Console.WriteLine("Compare two Nybble instances; a = {0}, b = {1} ", (int) a, (int) b); if (!a.Equals(b)) Console.WriteLine("a doesn't equal to b"); else Console.WriteLine("a equal to b"); Console.WriteLine(); //Compare Nybble instance "a" with an object "z" Console.WriteLine("Compare Nypple instance with the object z = {0}", z); if (!a.Equals(z)) Console.WriteLine("a doesn't equal to object z"); else Console.WriteLine("a equal to object z"); Console.WriteLine(); //Parsing string to nybble Console.WriteLine("Parse string to Nybble. Enter number from 0 - 15: "); string str = Console.ReadLine(); a = a.Parse(str); Console.WriteLine("Parsing was completed. a = {0}", (int) a); Console.WriteLine(); //Convert nybble instance to byte Console.WriteLine("Convert nybble a = {0} to byte", a); var ci = new CultureInfo("en-US"); byte l = a.ToByte(ci); Console.WriteLine("Completed. Byte l = {0}", l); Console.WriteLine(); // Console.WriteLine(Convert.ToBoolean((object)a)); // throwing error as expected Console.WriteLine("Sorting List<Nybble by ascending>"); var sort = new List<Nybble>() {5, 4, 2, 3, 1}; Console.WriteLine("Input list: "); sort.ForEach(x => Console.WriteLine(Convert.ToString((object) x))); sort.Sort(); Console.WriteLine("Sorted list: "); sort.ForEach(x => Console.WriteLine(Convert.ToString((object) x))); } catch (ArgumentOutOfRangeException ex) { Console.WriteLine(ex.Message); } catch (ArgumentNullException ex) { Console.WriteLine(ex.Message); } catch (NotImplementedException ex) { Console.WriteLine(ex.Message); } catch (InvalidCastException ex) { Console.WriteLine(ex.Message); } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { Console.ReadLine(); } }