首页 > Windows开发 > 详细

C#的委托

时间:2015-08-28 02:03:04      阅读:160      评论:0      收藏:0      [点我收藏+]
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;

namespace codeTest
{
    delegate void NumDelegate(int num);
    class Program
    {

        static void Main(string[] args)
        {
            AClass _a = new AClass();
            _a.cwdelegate = _a.AddNum;
            _a.cwdelegate(20);
            NumDelegate num20delegate = new NumDelegate(Add20);
            Console.WriteLine("-------------------------------------------");
            NumDelegate adddelegate =new NumDelegate(_a.AddNum);
            NumDelegate subdelegate = new NumDelegate(_a.SubNum);
            NumDelegate num30delegate = adddelegate + subdelegate;
            num30delegate(30);
            Console.WriteLine("-------------------------------------------");
            num30delegate += num20delegate;
            num30delegate(30);
            Console.WriteLine("-------------------------------------------");
            num30delegate += adddelegate;
            //去掉最后一个adddelegate
            num30delegate -= adddelegate;
            num30delegate(30);
            Console.ReadLine();
        }
        static void Add20(int num)
        {
            Console.WriteLine(string.Format("Add20: {0}", num));
        }
    }

    class AClass
    {
        public int result = 100;
        public delegate void CWDelegate(int num);
        public CWDelegate cwdelegate;
        public void AddNum(int num)
        {
            Console.WriteLine(string.Format("AddNum: {0}",num));
        }

        public void SubNum(int num)
        {
            Console.WriteLine(string.Format("SubNum: {0}", num));
        }
    }

}

 

C#的委托

原文:http://www.cnblogs.com/lgxlsm/p/4765248.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!