【C++面试知识】设计模式

这是好几天前腾讯电面时候面试官问我的问题,那会的我根本没有了解过,只能说没有接触过,上网搜了下这好像是面试经常问的问题,只能怪自己没有为面试做好准备。

1.单例模式

简述:保证一个类只有一个实例,并提供一个全局访问点,禁止外部通过构造函数构造实例,也就是说唯一的实例在类内就创建好了。

应用:用于管理资源,线程池、日志等的管理;

实现方式:将类的构造函数权限设置为private,这样就可以禁止外部构造实例,同时将拷贝构造函数和赋值函数也设为private,禁止拷贝构造唯一实例,将这两个函数只进行声明,不进行定义,这样一来,想要构造实例时就会编译报错。然后在类内定义一个static函数,返回唯一的一个实例,这个函数就是全局访问点,设为public。

2.工厂模式

工厂模式包括三种:简单工厂模式、工厂方法模式、抽象工厂模式。

工厂模式的主要作用是封装对象的创建,分离对象的创建和操作过程,用于批量管理对象的创建过程,便于程序的维护和扩展。

3.策略模式

待续。。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值