static void Main(string[] args) { Console.Clear(); Console.WriteLine("Demostración de redifición de operadores"); Precio a = new Precio(250); Precio b = 100; // Convesion implicita Precio c = 200; var d = a + b - c * 1.1; // Redefinir Operadores matematicos; // Ordenas usando IComparable var lista = new List <Precio>() { a, b, c, d }; lista.Sort(); Console.WriteLine("\nPrecios Ordenados (IComparable)"); lista.ForEach(x => Console.WriteLine($"- {x}")); Console.WriteLine("\nComparación redifiniendo operadores"); Console.WriteLine($"- {a} > {b} = {a > b}"); Console.WriteLine($"- {b} <= {c} = {b <= c}"); Producto coca = new Producto("Coca Cola", a); Producto pepsi = new Producto("Pepsi Cola", 100); // Convesion implicita Console.WriteLine("\nListar Productos"); Console.WriteLine($"- {coca}"); Console.WriteLine($"- {pepsi}"); }
public void Descontar(Precio p) => Precio -= p;
public void Robar() => Precio *= 2;
public Producto(string descripcion, Precio precio) { Descripcion = descripcion; Precio = precio; }
private Precio Restar(Precio otro) => new Precio(Valor - otro.Valor);
private Precio Sumar(Precio otro) => new Precio(Valor + otro.Valor);