路漫漫其修远兮!
专注于Windows API、.NET、虚拟化、企业信息化及网络技术。
using System;
using System.Collections.Generic;

public delegate void DExchange<T>(ref T t1,ref T t2);

public interface IExchange<T>
{
    void Swap(ref T t1,ref T t2);
}

public class MyClass<T,V>: IExchange<T>
{
    public void Swap(ref T t1,ref T t2)
    {
        T temp = t1;
        t1 = t2;
        t2 = temp;
    }
    public void SayHello<M>(V v1,M m1)
    {
        return;
    }
}

public class RunMyApp
{
    public static void Main()
    {
        string s = "abc";
        string t = "efg";
        MyClass<string,int> my = new MyClass<string,int>();
        my.Swap(ref s,ref t);
        
        IExchange<string> IE = my;
        IE.Swap(ref s, ref t);
        
        DExchange<string> de = my.Swap;
        de(ref s, ref t);
        
        Console.WriteLine(s);
        Console.ReadKey();
    }
}
posted on 2016-04-07 16:46  艺歆  阅读(426)  评论(1)    收藏  举报