logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【设计模式】——抽象工厂模式(Abstract Factory Pattern)

抽象工厂模式是所有形态的工厂模式中最抽象和最具一般性的一种。它适用于处理具有产品族(即一组相互关联或相互依赖的产品)的产品结构。产品族是指位于不同等级结构中的一组产品,它们之间可能存在一定的依赖或约束关系。抽象工厂模式通过定义一个接口,使得客户端可以在不必指定具体产品的情况下,创建多个产品族中的产品对象。

文章图片
#设计模式#抽象工厂模式#c++ +1
【设计模式】——解释器模式(Interpreter Pattern)

解释器模式(Interpreter Pattern)是一种行为型设计模式,它提供了一种解释语言句子或表达式的方法。这种模式特别适合需要评估复杂语法或表达式的场景,如编译器、公式解析器、查询处理系统等。本文将详细介绍解释器模式的概念、结构,并通过C++实现一个简单的算术表达式解释器。

文章图片
#解释器模式#设计模式#c++ +1
【设计模式】——备忘录模式(Memento Pattern)

备忘录模式(Memento Pattern),又称快照模式(Snapshot Pattern),属于行为型设计模式。该模式的主要目的是在不破坏对象封装性的前提下,捕获并保存一个对象的内部状态,以便在需要时能够恢复该对象到原先的状态。本文将详细介绍备忘录模式的概念、实现步骤及其在C++中的应用。

文章图片
#备忘录模式#设计模式#c++ +1
【设计模式】——观察者模式(Observer Pattern)

观察者模式(Observer Pattern)是其中一种非常流行的设计模式,它定义了一种一对多的依赖关系,使得当一个对象的状态发生变化时,所有依赖于它的对象都会得到通知并自动更新。本文将详细介绍观察者模式的概念、结构及其在C++中的实现。

文章图片
#观察者模式#设计模式#c++ +1
【设计模式】——简单工厂模式(Simple Factory Pattern)

简单工厂模式又称为静态工厂方法模式,它定义了一个工厂类,这个类根据传入的参数不同返回不同类的实例。这些实例通常都具有共同的父类或接口。简单工厂模式的核心在于将对象的创建逻辑封装在工厂类中,客户端通过调用工厂类的静态方法来获取所需的对象,而无需直接实例化具体产品类。

文章图片
#简单工厂模式#设计模式#c++ +1
C++八股文基础(二)—— 关键字(const、static、define、typedef、inline、new、malloc、constexpr、volatile、extern、前置++和后置++)

C++八股文基础(二)—— 关键字(const、static、define、typedef、inline、new、malloc、constexpr、volatile、extern、前置++和后置++)

文章图片
#c++#开发语言
【设计模式】——享元模式(Flyweight Pattern)

享元模式(Flyweight Pattern)是一种对象结构型模式,它通过共享已经存在的对象来减少内存使用量和提高系统性能。享元模式特别适用于那些创建大量相似对象而导致内存消耗过大的场景。本文将详细介绍享元模式在C++中的实现和应用。

文章图片
#设计模式#享元模式#c++ +1
【设计模式】——单例模式(Singleton Pattern)

单例模式(Singleton Pattern)是这些设计模式中的一种,它提供了一种创建对象的最佳方式,确保一个类只有一个实例,并提供一个全局访问点来获取这个实例。这种模式在需要严格控制资源访问、管理全局状态或实现共享资源访问时非常有用。

文章图片
#设计模式#单例模式#c++
【设计模式】——装饰器模式(Decorator Pattern)

在软件开发中,设计模式是解决常见问题的最佳实践。装饰器模式(Decorator Pattern),又称为包装器模式(Wrapper Pattern),是一种结构型设计模式,它允许在不改变原有对象结构的基础上,动态地给对象添加一些新的职责(即增加其额外功能)。这种模式在C++中的应用广泛,特别适合于需要灵活扩展对象功能的场景。

文章图片
#设计模式#装饰器模式#c++ +1
【设计模式】——命令模式(Command Pattern)

命令模式(Command Pattern)是行为型设计模式之一,它通过将一个请求封装为一个对象,从而使请求发送者和接收者之间解耦,并提供了额外的灵活性,如支持撤销和重做、请求排队等。本文将详细介绍命令模式在C++中的实现及其应用场景。

文章图片
#设计模式#命令模式#c++ +1
    共 16 条
  • 1
  • 2
  • 请选择