C++委托简介

本文阐述了委托模式的概念,并通过实例展示了如何使用委托模式来提高代码的复用性和灵活性。详细介绍了如何将具体任务委托给不同的实现类,以及如何在不修改高层代码的情况下改变底层实现,从而实现代理与桥接作用。

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

委托就是把具体事情让别人做,我只调用你的函数。

下面是一个例子:
class RealSort

{
public:
void sort();
};

class MySort

{
private:
RealSort rs;
public:
SetName(RealSort rs)
{
   this->rs = rs;
}

void sort()
{
  rs.sort();
}
};
这里MySort将具体事情sort委托给RealSort做。
委托的作用在于保持抽象层的稳定,让抽象层不随之细节的变化而变化,也就是你上层的代码如何变化,下层的代码可以维持稳定。就以这个例子来说,开始要求用选择排序,后来老板的要求变了,要用快速排序,那么我只需修改RealSort这个文件,而MySort这个文件不需要重新编译。

#add 将RealSort中的sort()设计为纯虚函数,即成为bridge模式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值