| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1029 人关注过本帖
标题:如何判断是否有委托对象啊
只看楼主 加入收藏
可见光
Rank: 1
等 级:新手上路
帖 子:143
专家分:0
注 册:2007-6-15
收藏
 问题点数:0 回复次数:0 
如何判断是否有委托对象啊
实验要求
1.    自己选择一个应用实例,可以是教材中的示例或已完成的实验设计;为所选择的示例声明一种自定义的委托类型,使用该委托类型,并在程序中调用该委托类型。
2.    要求实现的程序必须使用运算符+,—操作委托对象,来验证委托类型的+,—操作的基本特性。
3.    必须使用GetInvocationList方法来获取委托对象中的代表列表中的信息
a)    做出是否有委托对象的断定。
b)    利用GetInvocationList方法的返回值做委托对象关联处理函数的操作(选做)。
下面是我写的,大家帮忙看看吧。。。
using System;

namespace MyDeleg
{
    delegate int MyDelegate(int Num1, int Num2);

    class MyClass
    {
        public static int Add(int Num1, int Num2)
        {
            int Result;
            Result = Num1 + Num2;
            Console.WriteLine("{0}+{1}={2}", Num1, Num2, Result);
            return Result;
        }

        public static int Sub(int Num1, int Num2)
        {
            int Result;
            Result = Num1 - Num2;
            Console.WriteLine("{0}-{1}={2}", Num1, Num2, Result);
            return Result;
        }

        public static void Main()
        {
            int Num1; int Num2;
            Num1 = 777;
            Num2 = 222;
            MyDelegate a, b, c, d;
            a = new MyDelegate(Add);
            b = new MyDelegate(Sub);
            Console.WriteLine("委托的简单调用");
            a(Num1, Num2);
            b(Num1, Num2);
            Console.WriteLine("委托对象的简单运算");
            c = a + b;
            d = a - b;
            Console.WriteLine("委托对象的< + >运算");
            c(Num1, Num2);
            Console.WriteLine("委托对象的< - >运算");
            d(Num1, Num2);
            Delegate[] delegateArray = c.GetInvocationList();
            Console.WriteLine("获取< + >运算中委托对象中的代表列表:");
            foreach (Delegate delgt in delegateArray)
            {
                Console.WriteLine(delgt.Method.GetBaseDefinition());
            }
            Console.ReadLine();
        }
    }
}
搜索更多相关主题的帖子: 对象 委托 判断 
2008-04-09 18:13
快速回复:如何判断是否有委托对象啊
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015838 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved