9 Eylül 2015

Delegate 4 :Generic Delegate Types

using System;

namespace Delegates3
{
    public delegate T Donusturucu<T>(T args);
    public class Islemler
    {
        public static void Donusum<T>(T[] degerler, Donusturucu<T> d)
        {
            for (int i = 0; i < degerler.Length; i++)
            {
                degerler[i] = d(degerler[i]);
            }
        }
    }
    class Program
    {
        static int Kare(int x) { return x * x; }
        static void Main(string[] args)
        {
            int[] degerler = { 1, 2, 3 };
            Islemler.Donusum<int>(degerler, Kare);
            foreach (int i in degerler)
            {
                Console.WriteLine(i);
            }
            Console.ReadKey();
        }
    }
}