
C/C++
文章平均质量分 69
禾斗人
忙里忙外一场空,
满腹经纶何人懂。
自古才俊多落魄,
直待明日展雄风。
github.com/wcwu
展开
-
C中LOG 的实现-参考Redis实现
#include#include#include#include#include#include#include "log.h"char logfile[] = "log.txt";void myLog(int level, const char *fmt, ...) { va_list ap; char msg[MAX_LOGM原创 2014-11-18 18:46:27 · 517 阅读 · 0 评论 -
Redis时间任务精简版--定时器设计
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespa原创 2014-11-20 11:02:42 · 3920 阅读 · 0 评论 -
程序参数解析函数使用getopt_long()函数,改编自webbench
#include "socket.c"#include #include #include #include #include #include #include /* Allow: GET, HEAD, OPTIONS, TRACE */#define METHOD_GET 0#define METHOD_HEAD 1#define METHOD_原创 2015-05-28 15:47:52 · 577 阅读 · 0 评论 -
C语言对char*的封装,形成buffer
通过对lighttpd中buffer的裁剪,得到对char*的封装代码,包括初始化,copy,append等操作结构体的定义typedef struct { char *ptr; size_t used; size_t size; } buf原创 2015-07-27 20:08:00 · 5626 阅读 · 0 评论 -
事件机制实现超时触发功能,同时捕捉Ctrl+C信号
更多代码详细请参见:https://github.com/wcwu/Timout-Event超时事件任务包括几个部分:事件结构体的构造;事件的初始化;事件的注册;事件的删除;事件的触发和执行。 事件结构体构造:结构体包括两个部分,一个是事件本事的结构体,该结构体包含每个事件的节点信息,主要是每个节点的超时时间记录和超时处理函数。typedef struct timeou原创 2015-08-25 20:21:43 · 738 阅读 · 0 评论 -
UML和模式应用书中C++版 NextGen POS代码
最近在看UML和模式应用一书,感觉获益匪浅,全书围绕两个示例进行分析,其中一个就是著名的POS机示例。UML分为交互图和类图两个部分,交互图表明类与类之间的相互关联(强调方法),类图表明类本身的属性和成员函数(强调类本身),当然它也给出类之间的对应关系,表明类之间的组合,依赖等关系。由于交互图篇幅比较大,故在此只上类图:在实现中为了简单点,把Store 的功能加在了Re原创 2015-11-15 23:19:26 · 2067 阅读 · 0 评论 -
UML中GRASP面向对象设计原则
GRASP原则(General Responsibility Assignment Software Patterns)基于职责分配的的面向对象设计原则,它是面向对象设计的基本原则。主要包括9个原则,总结一下:1.创建者。谁负责创建类?在Java和C++中对应调用new或者对象构造函数。这个还比较容易理解,谁负责创建,则可以考虑将被创建者组合为创建者的一个属性(属性可见),或者创建者的某个原创 2015-11-19 20:40:44 · 3088 阅读 · 0 评论 -
一句话描述常用设计模式——代码大全
常用的设计模式能解决很多面向对象过程中的程序设计问题,但常常又让人有些迷惑,看代码大全一书睹简明解释,摘录如下:单例模式(Singleton):为有且仅有一个实例的类提供一种全局访问的功能。工厂模式(Factory):为特定基类的派生类进行实例化时,除了在工厂内部以外无需为了每一种可能的职责配置情况去创建特定的子类。抽象工厂模式(Abstract Factory):通过指定对象组的种类原创 2015-12-13 22:48:43 · 1204 阅读 · 0 评论 -
包的设计
在进行开发的过程中,尤其是Java的开发。在对哪些类需要组织在一个包中,哪些类需要放在另外一个包中往往感到比较迷茫。UML一书中给了我们比较好的总结如下:准则1 通过功能性内聚进行划分意即将参与共同目的,服务,协作,策略和功能的强相关类型组织在一起。准则2 将一组功能上相关的接口放入单独的包准则3 区分用于正式工作的包和用于聚集不稳定类的包准则4 职责越原创 2015-11-26 23:42:55 · 508 阅读 · 0 评论