//static void DoUno() //{ // TheClass theClass = new TheClass(); // Int32ToString myDelegate = theClass.ConvertiInStringa; // Console.WriteLine(myDelegate(5)); // Console.ReadLine(); //} //static void DoDue() //{ // TheClass1 theClass1 = new TheClass1(); // TheClass2 theClass2 = new TheClass2(); // ClasseSenzaImplementazione theClass = new ClasseSenzaImplementazione(); // theClass.DelegatoIntero = theClass1.ConvertiInStringa; // Console.WriteLine(theClass.DammiUnaStringa(5)); // theClass.DelegatoIntero = theClass2.ConvertiInStringa; // Console.WriteLine(theClass.DammiUnaStringa(5)); // Console.ReadLine(); //} //static void DoTre() //{ // TheClass1 theClass1 = new TheClass1(); // TheClass2 theClass2 = new TheClass2(); // ClasseSenzaImplementazione theClass = new ClasseSenzaImplementazione(); // theClass.DelegatoIntero = theClass1.ConvertiInStringa; // Console.WriteLine(theClass.DammiUnaStringa(5)); // theClass.DelegatoIntero = theClass2.ConvertiInStringa; // Console.WriteLine(theClass.DammiUnaStringa(5)); // Console.ReadLine(); //} static void DoQuattro() { Calcolatrice calcolatrice = new Calcolatrice(); //Local function Int32 somma(Int32 op1, Int32 op2) { return(op1 + op2); }; Int32 divisione(Int32 op1, Int32 op2) { return(op1 / op2); }; calcolatrice.AddCifra(1); calcolatrice.Operazione(somma); calcolatrice.AddCifra(5); Console.WriteLine(calcolatrice.Totale().ToString()); calcolatrice.Operazione(divisione); calcolatrice.AddCifra(3); Console.WriteLine(calcolatrice.Totale().ToString()); calcolatrice.AddCifra(5); calcolatrice.Operazione((op1, op2) => (Int32)Math.Pow(op1, op2)); calcolatrice.AddCifra(3); Console.WriteLine(calcolatrice.Totale().ToString()); calcolatrice.Operazione( delegate(Int32 op1, Int32 op2) { return(op1 >> op2); } ); // delegato anonimo calcolatrice.AddCifra(1); Console.WriteLine(calcolatrice.Totale().ToString()); calcolatrice.Operazione(somma); calcolatrice.AddCifra(3); calcolatrice.AddCifra(5); calcolatrice.Back(); Console.WriteLine(calcolatrice.Totale().ToString()); Console.ReadLine(); }
//static void DoQuattro() //{ // Calcolatrice calcolatrice = new Calcolatrice(); // calcolatrice.Uno(); // calcolatrice.Aggiungi(); // calcolatrice.Cinque(); // Console.WriteLine(calcolatrice.Totale().ToString()); // calcolatrice.Dividi(); // calcolatrice.Tre(); // Console.WriteLine(calcolatrice.Totale().ToString()); // calcolatrice.Cinque(); // calcolatrice.Moltiplica(); // calcolatrice.Tre(); // Console.WriteLine(calcolatrice.Totale().ToString()); // Console.ReadLine(); //} //static void DoCinque() //{ // Calcolatrice calcolatrice = new Calcolatrice(); // Somma somma = new Somma(); // Differenza differenza = new Differenza(); // Prodotto prodotto = new Prodotto(); // Divisione divisione = new Divisione(); // calcolatrice.AddCifra(1); // calcolatrice.Operazione(somma); // calcolatrice.AddCifra(5); // Console.WriteLine(calcolatrice.Totale().ToString()); // calcolatrice.Operazione(divisione); // calcolatrice.AddCifra(3); // Console.WriteLine(calcolatrice.Totale().ToString()); // calcolatrice.AddCifra(5); // calcolatrice.Operazione(prodotto); // calcolatrice.AddCifra(3); // Console.WriteLine(calcolatrice.Totale().ToString()); // Console.ReadLine(); //} static void DoSei() { Calcolatrice calcolatrice = new Calcolatrice(); Somma somma = new Somma(); Differenza differenza = new Differenza(); Prodotto prodotto = new Prodotto(); Divisione divisione = new Divisione(); ShiftDestro shiftDestro = new ShiftDestro(); calcolatrice.AddCifra(1); calcolatrice.Operazione(somma); calcolatrice.AddCifra(5); Console.WriteLine(calcolatrice.Totale().ToString()); calcolatrice.Operazione(divisione); calcolatrice.AddCifra(3); Console.WriteLine(calcolatrice.Totale().ToString()); calcolatrice.AddCifra(5); calcolatrice.Operazione(prodotto); calcolatrice.AddCifra(3); Console.WriteLine(calcolatrice.Totale().ToString()); calcolatrice.Operazione(shiftDestro); calcolatrice.AddCifra(1); Console.WriteLine(calcolatrice.Totale().ToString()); calcolatrice.Operazione(somma); calcolatrice.AddCifra(3); calcolatrice.AddCifra(5); calcolatrice.Back(); Console.WriteLine(calcolatrice.Totale().ToString()); Console.ReadLine(); }