c# 多播委托的 异常处理 如果有返回值 只返回最后一个返回值

本文通过一个C#示例介绍了如何使用委托进行方法的组合,并展示了如何处理多个方法的调用顺序及异常情况。该示例还包含了简单的控制台输出以验证委托链中各个方法的执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {


            Func<string> f0 = f1;
            f0 += f12;
            f0 += f2;
            f0 += f3;
            f0 += f4;
            Delegate[] dels = f0.GetInvocationList();

            foreach (Func<string> item in dels)
            {

                try
                {
                    Console.WriteLine(item());
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.ToString());
                }

            }

            Console.ReadKey();


        }


        static string f1()
        {

            return "1";

        }
        static string f2()
        {

            return "2";

        }
        static string f3()
        {

            return "4";

        }
        static string f4()
        {

            return "5";

        }
        static string f12()
        {
            int b = 1;
            b = b - 1;
            int i = 1 / b;
            return "1ff";

        }

    }
}

 

转载于:https://www.cnblogs.com/xh0626/p/5972574.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值