Exemple #1
0
        delegate void Operacao(int n1, int n2); //delagate armazena referencias de metodos

        static void Main(string[] args)
        {
            Matematica m     = new Matematica();
            Operacao   conta = null;

            conta += m.Somar;
            conta += m.Subtrair;
            conta += m.Divdir;
            conta += m.Multiplicar;
            conta(10, 2);

            Console.ReadKey();
        }
Exemple #2
0
        static void Main(string[] args)
        {
            Matematica m = new Matematica();
            Conta      c = null; // Não precisa instanciar*****

            c += m.Somar;
            c += m.Subtrair;
            c += m.Divisao;

            // Você adiciona os métodos no delegate a qual no  final ele executa porém somente se possuir o mesmo retorno.
            c(5, 5);

            Console.ReadKey();
        }
Exemple #3
0
        static void Main(string[] args)
        {
            Matematica matematica = new Matematica();

            Operacao conta = null;

            conta += matematica.Soma;
            conta += matematica.Subtração;
            conta += matematica.Multiplicacao;
            conta += matematica.Divisao;

            conta(10, 2);

            Console.WriteLine("-------------------------------");

            conta -= matematica.Soma;
            conta -= matematica.Multiplicacao;

            conta(10, 2);
        }