public static void Executar() { Soma op1 = MinhaSoma; ImprimirSoma imprimir = MeuImprimirSoma; System.Console.WriteLine($"Op1: {op1(10, 10)}"); imprimir(30, 5); }
static void Main(string[] args) { Soma op1 = UsandoDelegate.MinhaSoma; Console.WriteLine(op1(2, 3.9)); ImprimirSoma op2 = UsandoDelegate.MenuImprimirSoma; op2(5, 8); // Func<double, double, double> op3 = UsandoDelegate.MinhaSoma; // Console.WriteLine(op3(2.5,3)); }
public static void Executar() { Soma op1 = MinhaSoma; Console.WriteLine(op1(3.9, 2)); ImprimirSoma op2 = MeuImprimirSoma; op2(5.4, 8); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(2.5, 3)); Action <double, double> op4 = MeuImprimirSoma; op4(9.2, 3); }
public static void Executar() { Soma op1 = Somar; Console.WriteLine(op1(5, 9)); ImprimirSoma op2 = ImprimindoSoma; op2(7.4, 6); Func <double, double, double> op3 = Somar; Console.WriteLine(op3(6, 4, 8)); Action <double, double> op4 = ImprimindoSoma; op4(4, 5, 1); }
public static void Executar() { Soma op1 = MinhaSoma; ImprimirSoma op2 = MeuImprimirSoma; Console.WriteLine(op1(781883, 781883)); op2(781883, 781883); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(781883, 781883)); Action <double, double> op4 = MeuImprimirSoma; op4(781883, 781883); }
public static void Executar() { Soma op1 = MinhaSoma; Console.WriteLine(op1(2.9, 5)); ImprimirSoma op2 = MeuImprimirSoma; op2(5.4, 8); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(2.3, 3)); Action <double, double> op4 = MeuImprimirSoma; op4(7.7, 23.4); }
public static void Executar() { Soma op1 = MinhaSoma; Console.WriteLine(op1(2, 9)); ImprimirSoma op2 = MeuImprimirSoma; op2(17, 9); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(23.8, 11.1)); Action <double, double> op4 = MeuImprimirSoma; op4(124.9, 12.9); }
public static void Executar() { Soma op1 = MinhaSoma; op1(5, 6); ImprimirSoma op2 = MeuImprimirSoma; op2(10, 20); Func <double, double, double> Somatorio = MinhaSoma; Console.WriteLine(Somatorio(7, 8)); Action <double, double> op4 = MeuImprimirSoma; op4(9, 10); }
public static void Executar() { Soma op1 = MinhaSoma; Console.WriteLine(op1(4.4, 5.5)); ImprimirSoma op2 = MeuImprimirSoma; op2(8.7, 3); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(MinhaSoma(2.5, 4)); Action <double, double> op4 = MeuImprimirSoma; op4(7.7, 23.4); }
public static void Executar() { Soma soma = MinhaSoma; Console.WriteLine(soma(2.2, 10)); ImprimirSoma imp = MeuImprimirSoma; imp(1, 6.0); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(44.2, 56)); Action <double, double> op4 = MeuImprimirSoma; op4(1, 6.2); }
public static void Executar() { Soma ope1 = MinhaSoma; // Função MinhaSoma() pode ser associada ao Tipo Soma pois possuem os mesmos parâmetros. Console.WriteLine(ope1(2, 3.9)); ImprimirSoma ope2 = MeuImprimirSoma; ope2(5.4, 8); Func <double, double, double> ope3 = MinhaSoma; Console.WriteLine(ope3(2.5, 3)); Action <double, double> ope4 = MeuImprimirSoma; ope4(7.7, 23.4); }
public static void Executar() { Soma op1 = MinhaSoma; Console.WriteLine(op1(15, 27)); ImprimirSoma op2 = MeuImprimirSoma; op2(25, 17); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(37, 5)); Action <double, double> op4 = MeuImprimirSoma; op4(40, 2); }
public static void Executar() { Soma op1 = MinhaSoma; Console.WriteLine(op1(2, 3)); ImprimirSoma op2 = MeuImprimirSoma; op2(5, 8); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(6, 9)); Action <double, double> op4 = MeuImprimirSoma; op4(7, 8); }
public static void Executar() { Soma op1 = MinhaSoma; Console.WriteLine(op1(2, 3.9)); ImprimirSoma op2 = MeuImprimirSoma; op2(5.5, 7); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(7.5, 8.5)); Action <double, double> op4 = MeuImprimirSoma; op4(3, 3); }
public static void Executar() { Soma op1 = MinhaSoma; Console.WriteLine(op1(2, 3.5)); ImprimirSoma op2 = MeuImprimirSoma; op2(5.6, 8); Console.WriteLine(); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(10.5, 9.5)); Action <double, double> op4 = MeuImprimirSoma; op4(23.4, 8.1); }
public static void Executar() { //precisa haver compatibilidade dos parametros, tipo de retorno Soma op1 = MinhaSoma; Console.WriteLine(op1(2, 3)); ImprimirSoma op2 = MeuImprimir; op2(5.4, 8); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(2.5, 3)); Action <double, double> op4 = MeuImprimir; op4(7.7, 23.4); }
public static void Executar() { Soma p1 = MinhaSoma; Console.WriteLine(p1(10, 5)); ImprimirSoma op2 = ImprimirMinhaSoma; op2(35.28934723, 15.23452345); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(123.5, 123.5)); Action <double, double> op4 = ImprimirMinhaSoma; op4(12.5, 12.5); Console.ReadKey(); }
public static void Executar() { // Associando uma função pré existente a um delegate, não necessariamente é preciso passar um Lambda // A única coisa que precisa é que haja uma compatibilidade entre as assinaturas. Soma op1 = MinhaSoma; Console.WriteLine(op1(1, 3.9)); ImprimirSoma op2 = MeuImprimirSoma; op2(5.4, 8); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(2.5, 3)); Action <double, double> op4 = MeuImprimirSoma; op4(7.7, 23.4); }
public static void Executar() { // Associando delegate à função existente // Precisa ter mesma assinatura Soma op1 = MinhaSoma; Console.WriteLine(op1(2, 3.9)); ImprimirSoma op2 = MeuImprimirSoma; op2(5.4, 8); // Associando Func e Action à funções existentes Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(2.5, 3)); Action <double, double> op4 = MeuImprimirSoma; op4(7.7, 23.4); }
public static void Executar() { Soma op1 = MinhaSoma; // se houver igualdade nos tipos, quant e ordem dos params // e o tipo de retorno é mesmo. Então conseguimos fazer // a associacão de uma funcão que já existe usando um // delegate como tipo e armezenando dentro de uma var. Console.WriteLine(op1(2, 3.9)); ImprimirSoma op2 = MeuImprimirSoma; op2(5.4, 8); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(2.5, 3)); Action <double, double> op4 = MeuImprimirSoma; op4(7.7, 23.4); }
public static void Executar() { // podemos pegar uma função que já existe e // armazenar ele dentro de um delegate // (só precisa existir uma compatibilidade entre as assinaturas): // parâmetros e tipo de retorno! Soma op1 = MinhaSoma; Console.WriteLine(op1(2, 3)); ImprimirSoma op2 = MeuImprimirSoma; op2(5.4, 8); Func <double, double, double> op3 = MinhaSoma; Console.WriteLine(op3(2.5, 3)); Action <double, double> op4 = MeuImprimirSoma; op4(7.7, 23.4); }