![](https://img-blog.csdnimg.cn/b2c1e4f9ef8f41588242a0b84f6ef68f.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
设计模式
文章平均质量分 68
.
liu_jie_bin
技术栈: c++ pyhton Qt opencv halcon
展开
-
GoF设计模式——状态模式(C++实现)
文章目录概念UML结构图代码实现状态模式的使用场景概念状态模式是一种行为设计模式, 让你能在一个对象的内部状态变化时改变其行为。在探讨状态模式的优雅之前,先来看看以下代码场景;enum StateType{ Red, Green, Yellow};void handle(int stateType){ while(1) { switch (stateType) { case Green: {原创 2022-05-01 11:48:58 · 1130 阅读 · 0 评论 -
GoF设计模式——适配器模式(C++实现)
适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。原创 2022-04-10 10:22:38 · 1000 阅读 · 0 评论 -
GoF设计模式——工厂模式(C++实现)
文章目录🌳概念🌳 简单工厂模式🌳 工厂方法模式🌳 抽象工厂模式🌳概念为了提高内聚(Cohesion)和松耦合(Coupling),我们经常会抽象出一些类的公共 接口以形成抽象基类或者接口。这样我们可以通过声明一个指向基类的指针来指向实际的子 类实现,达到了多态的目的。工厂模式属于创建型模式,它提供了一种创建对象的最佳方式。通过定义创建对象的接口,封装了对象的创建;使得类的实例化工作延迟到了子类中。工厂模式的实现方式可分为简单工厂模式、工厂方法模式、抽象工厂模式。🌳 简单工厂模式🍞具体的情形:一个原创 2022-04-09 18:24:56 · 1144 阅读 · 0 评论 -
GoF设计模式——单例模式(C++实现)
概念单例模式(Singleton Pattern)是使用最广泛的设计模式之一。其作用是保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。单例模式的写法有很多种,懒汉式、饿汉式等,其中对于多线程场景,也有多种方法,双检锁头、atomic类等。本章讲的是一种更优雅的写法,这种方法也被称为Meyers’ Singleton。即使用函数内的 local static 对象。这样,只有当第一次访问getInstance()方法时才创建实例。当然,这种方法只有在c++11之后才是线程原创 2022-04-04 22:20:27 · 1203 阅读 · 0 评论 -
GoF设计模式——策略模式(C++实现)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录概念策略模式实现相机封装UML类图.h文件.cpp文件客户端概念策略模式是一种行为型设计模式,它的作用是是为了封装算法,使它们可以互相替代。让客户端(即算法调用者)和算法实现互相解耦,以便灵活调用。策略模式实现相机封装工业应用中,常见的相机厂家有大恒、大华、海康威视等,可以采用策略模式来封装实现统一的接口,以操作不同厂家的相机。UML类图.h文件#ifndef STRATEGYPATTERN_H#define ST原创 2022-03-02 22:10:05 · 358 阅读 · 0 评论