自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

以c++为核心,专注于基础技术(设计模式、c++技术、专业算法等)

C++ er,主要兴趣为基础技术。后续会陆续更新设计模式、C++技术、专业算法解析与C++实现等。。。

  • 博客(8)
  • 收藏
  • 关注

原创 设计模式:基于《Head First 设计模式》的学习之路(四)--装饰者模式

装饰者模式是一种动态扩展对象功能的设计模式,通过包装对象而非继承来增强功能。文章以星巴克咖啡为例,分析了传统继承方式的弊端(类爆炸、维护困难),提出使用装饰者模式更灵活地组合饮料和调料。该模式通过组件(Beverage)和装饰者(CondimentDecorator)的相同接口,实现运行时任意组合(如Mocha装饰HouseBlend)。代码示例展示了如何通过嵌套装饰者(如双倍Mocha+Soy)动态计算价格,体现了对扩展开放、对修改关闭的原则。相比继承,组合方式更灵活,能轻松应对新调料需求。

2025-07-22 22:14:07 1026

原创 设计模式:基于《Head First 设计模式》的学习之路(三)--观察者模式

摘要:观察者模式是一种行为型设计模式,用于建立对象间一对多的依赖关系,当主题状态改变时自动通知所有观察者。本文以气象站系统为例,展示了如何应用该模式:WeatherData作为主题,多个布告板作为观察者,通过测量数据变化时自动更新显示。相比直接调用具体实现的方案,观察者模式通过抽象接口降低了耦合度,使系统更灵活可扩展。文章详细讲解了模式原理、UML类图及具体实现过程,包括主题注册/删除观察者、数据更新通知机制等,并比较了推送和拉取两种数据获取方式。该模式广泛应用于事件响应、消息推送等场景。

2025-06-22 22:33:53 991

原创 C++ just for fun(1):大乐透摇号模拟

C++实现简单的大乐透,再也不用浪费银子了

2025-06-16 22:07:09 747

原创 CMake基础知识(三)-CMakeLists.txt写法(1):从简单的CMakeLists.txt开始

通过之前的CMake基础教程一、二在对CMake有了概念上的认识之后,下面开始学习如何写自己的CMake,也就是CMake的具体的语法(CMakeLists.txt)。我一直坚信,学习某个东西的时候先要对其整体有个概念。现在就从一个简单的例子来看下cmake的用法,然后后续再进入到细节中去深入~~

2025-06-15 14:56:46 731

原创 CMake基础知识(一)-概念篇

对于习惯了各种开箱即用的IDE(代表性的VisualStudio)的童鞋来说,初次接触CMake可能会觉得非常的不适应。那么CMake到底是什么呢,有什么用呢?和常见的编译器、生成器又有什么关系呢?还有make/ninja又是什么?

2025-01-19 18:24:24 2409

原创 设计模式:基于《Head First 设计模式》的学习之路(二)--策略模式

本文探讨了鸭子游戏设计中行为管理的优化方案。最初采用继承方式导致所有子类强制继承不必要的行为(如橡皮鸭会飞),随后尝试接口实现又造成代码冗余。最终提出"策略模式"解决方案:1) 将变化的行为(飞行、叫声)抽象为独立接口;2) 创建具体行为实现类;3) 在鸭子类中组合行为对象。通过setter方法支持运行时动态修改行为,实现了"针对接口编程"和"多用组合少用继承"的设计原则。该模式有效解决了行为复用和灵活配置问题,使系统扩展更弹性且不影响现有代码。

2025-01-14 21:15:47 1666

原创 设计模式:基于《Head First 设计模式》的学习之路(一)--开始前

江湖充满了设计模式的传说。。。。有人说他是独孤九剑,一出手就技惊四座;有人说他是吸星大法,修炼一次受用一生;也有人说他是僻邪剑法,不得要领会遭至灾难。

2025-01-14 20:50:55 426

原创 CMake基础知识(二)-开发环境搭建:VS Code + Clang + Cmake编译C++

VSCode+Clang+Cmake搭建C++开发编译的环境

2025-01-11 22:44:47 2511

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除