[C#]关于委托delegate的场景假设及代码模拟-A

前言

C#中的委托是一个类型,它描述了一个方法的签名,即方法的参数类型和返回类型。委托可以看作是一个指向方法的引用,使得我们可以像使用函数指针一样调用这些方法。引用可在运行时被改变。委托只是一种特殊类型的对象,其特殊之处在于,我们以前定义的所有对象都包含数据,而委托包含的只是一个或多个方法的地址。

场景假设

假设张秘书,在领导每次出差前,需要亲自完成:购买飞机票、订酒店、准备旅行包等琐碎的事务性的准备工作,繁琐并且效率低。自从携程网及淘宝网出现后,他直接在[携程]网上订购飞机票和酒店,在[淘宝]网上购买旅行用品,大大地提高了工作效率。携程网和淘宝网,是两个可委托的代理平台。

代码模拟

using System;

namespace DelegateDemo
{
    delegate void CTrip(int i);
    delegate void TaoBao(string name);
    public class Secretary
    {    
        public void BuyAirlineTicket(int count)
        {
            Console.WriteLine("购买{0}张飞机票。", count);
        }
        public void BookHotel(int star)
        {            
           Console.WriteLine("订{0}星级酒店。",star); 
        }
        public void BuyTripGoods(string  name)
        {
            Console.WriteLine("购买旅行用品:{0}", name);
        }
    }

    class Pr

你可能感兴趣的:(代码哲学,c#,开发语言)