2022年6月25日

摘要: 今天我们聊一个最简单的设计模式,适配器Adapter。跟以往一样,我们还是从一个例子出发。 一个例子 最开始的结构 假设我们有个数据分析软件,其中包含了数据收集器和数据分析器,数据收集器基于XML格式向数据分析器提供数据,有多种数据分析器,所以我们抽象出一个数据分析器的接口,用代码表示如下 clas 阅读全文
posted @ 2022-06-25 20:17 老胡写代码 阅读(606) 评论(0) 推荐(0) 编辑

2022年6月19日

摘要: 写在前面 Composite组合模式属于设计模式中比较热门的一个,相信大家对它一定不像对访问者模式那么陌生,毕竟谁又没有遇到过树形结构呢。不过所谓温故而知新,我们还是从一个例子出发,起底一下这个模式吧。 一个简单例子 设想我们要建立一个公司的人事架构,在一个公司里,我们可以简单地分为两种员工,一种是 阅读全文
posted @ 2022-06-19 10:58 老胡写代码 阅读(2580) 评论(0) 推荐(16) 编辑

2022年5月28日

摘要: ###写在前面 Mixin本意是指冰淇淋表面加的那些草莓酱,葡萄干等点缀物,它们负责给冰淇淋添加风味。在OOP里面也有Mixin这个概念,和它的本意相似,OOP里面的Mixin意在为类提供一些额外功能——在不破坏类本身或者它的继承链的基础上,在某些情况下可能会起到妙用。今天跟着老胡一起来看看吧。 从 阅读全文
posted @ 2022-05-28 18:35 老胡写代码 阅读(3371) 评论(10) 推荐(11) 编辑

2022年5月19日

摘要: 写在前面 Visitor模式在日常工作中出场比较少,如果统计大家不熟悉的模式,那么它榜上有名的可能性非常大。使用频率少,再加上很多文章提到Visitor模式都着重于它克服语言单分派的特点上面,而对何时应该使用这个模式及这个模式是怎么一点点演讲出来的提之甚少,造成很多人对这个模式有种雾里看花的感觉,今 阅读全文
posted @ 2022-05-19 21:53 老胡写代码 阅读(3128) 评论(15) 推荐(18) 编辑

2021年4月1日

摘要: 宏函数对于每个C程序员都决不陌生,就算是初出茅庐的C程序员也知道如何定义、使用宏函数。 但是当初学者看到类似于以下这种宏函数嵌套的时候,可能还是会比较嘀咕, #define CONVERTSTR(x) #x #define CONVERTSTR2(x) CONVERTSTR(x) 第二个宏函数所做的 阅读全文
posted @ 2021-04-01 23:21 老胡写代码 阅读(441) 评论(0) 推荐(0) 编辑

2021年3月25日

摘要: 写在前面 老胡最近在工作中,有个场景需要使用一个第三方库,引用头文件,链接库,编译运行,一切都很正常,但是接下来就遇到了一个很诡异的问题,调用该库的中的一个对象方法为对象修改属性的时候,会影响到对象的另外一个属性,当时百思不得其解,直呼灵异事件。 但后面静下心来细细看了一下代码和各种配置,发现了问题 阅读全文
posted @ 2021-03-25 20:09 老胡写代码 阅读(430) 评论(0) 推荐(1) 编辑

2021年3月14日

摘要: 对于C/C++程序员来说,掌握数据对齐是很有必要的,因为只有了解了这个概念,才能知道编译器在什么时候会偷偷的塞入一些字节(padding)到我们的结构体(struct/class),也唯有这样我们才能更好的理解、优化结构体和内存。 几个栗子 看看几个简单的Struct,能猜出他们的SIZE吗?(运行 阅读全文
posted @ 2021-03-14 21:29 老胡写代码 阅读(1083) 评论(0) 推荐(2) 编辑

2021年3月8日

摘要: malloc的默认行为 大家都知道C++中可以直接调用malloc请求内存被返回分配成功的内存指针,该指针指向的地址就是分配得到的内存的起始地址。比如下面的代码 int main() { void *p = malloc(1024); printf("0x%p\n", p); free(p); } 阅读全文
posted @ 2021-03-08 21:24 老胡写代码 阅读(2477) 评论(0) 推荐(0) 编辑

2020年7月25日

摘要: 提起子类、基类和方法继承这些概念,肯定大家都非常熟悉。毕竟,作为一门支持OOP的语言,掌握子类、基类是学习C#的基础。不过,这些概念虽然简单,但是也有一些初学者可能会遇到的坑,我们一起看看吧。 子类继承基类非私有方法 首先我们看最简单的一种,子类继承自基类,但子类对继承的方法没有任何改动 class 阅读全文
posted @ 2020-07-25 23:01 老胡写代码 阅读(2822) 评论(0) 推荐(0) 编辑

2020年7月8日

摘要: 大家好,欢迎来到老胡的博客,今天我们继续了解设计模式中的职责链模式,这是一个比较简单的模式。跟往常一样,我们还是从一个真实世界的例子入手,这样大家也对这个模式的应用场景有更深刻的理解。 一个真实的栗子 作为上班族,相信大家对请假都不陌生,每个公司都有自己请假的流程,稍微讲究点的公司还会有细致的规定, 阅读全文
posted @ 2020-07-08 23:07 老胡写代码 阅读(622) 评论(0) 推荐(3) 编辑

导航