ITPub博客

首页 > Linux操作系统 > Linux操作系统 > c# 委托测试

c# 委托测试

原创 Linux操作系统 作者:wisdomone1 时间:2012-03-31 12:27:14 0 删除 编辑
--学习委托
namespace ConsoleApplication1
{
    //声明委托类型  
    //委托返回类型为string
    //委托参数类型为string
    //委托返回类型及参数类型要与委托调用的方法相匹配,即与方法返回类型与参数类型匹配
    public   delegate string dgt_typ(string str);
    public class Testdelegate
    {
        public static string Replacespacestr(string str)
        {
            string temp="";
            char[] c1 = str.ToCharArray();
            foreach(char x in c1)
            {
                if (x!=' ')
                {
                    temp+=x;
                }
            }
            return temp;
        }

        public static string Reversestr(string str)
        {
            string temp = "";
            for (int i = str.Length-1; i >= 0;i-- )
            {
                temp += str[i];
            }
            return temp;
        }
    }
}



class Program
    {

        static void Main(string[] args)
        {
           //定义一个委托类型的变量,在构造函数里面调用委托要调用的方法,且方法不用带括号()
           dgt_typ mydelegate = new dgt_typ(Testdelegate.Replacespacestr);
           
           //通过上述的委托类型变量来真正调用方法,作具体的工作,前面的声明委托类型及定义委托类型变量全是准备工作
           //this is a big one对应委托调用方法的方法参数的具体值
           string mystr=mydelegate("this is a big one");
           Console.WriteLine(mystr);
           Console.ReadKey();
           mydelegate = Testdelegate.Reversestr;
           string rev=mydelegate(mystr);
           Console.WriteLine(rev);
           Console.ReadKey();
        }
    }

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9240380/viewspace-720035/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
提供针对oracle初学者及进阶的数据库培训,欢迎大家咨询: 微信: wisdomone 微信公众号: lovedb qq: 305076427 微博: wisdomone9

注册时间:2008-04-04

  • 博文量
    2149
  • 访问量
    11891000