
C++
边缘998
请关注我精彩为你而生
展开
-
代码设计模式之简单工厂模式(Factory)
简单工厂模式核心思想是用一个工厂来根据输入的条件产生不同的类,(返回父类接口或抽象类接口)。其次利用多态原理,将实现类(继承于抽象接口)各自进行自己的实现。这样的话,在实现类中是一个高内聚的类,类与类之间没有任何关系。 优点: 1、 对调用者来说不需要关系结果是由谁来实现,关心的是工厂提供的是客户想要的结果。 2、对于扩展来说,对原来代码无影响,只需要扩原创 2012-10-30 18:15:37 · 1563 阅读 · 0 评论 -
模型设计与实践---(四)异步选择IO(AnsySelect IO)
socketAsynSelect.h/******************************************************************** 创建时间: 2013/04/11 文件名: socketAsynSelect.h 描述: 异步选择I/O模型 需要有界面,要向UI抛WIN 消息。需要窗口句柄 作者: fengsh QQ :原创 2013-04-17 16:32:41 · 1450 阅读 · 0 评论 -
模型设计与实践---(五)事件选择(EventSelect iO)
socketEventSelect.h/******************************************************************** 创建时间: 2013/04/11 文件名: socketEventSelect.h 描述: 事件选择I/O模型 作者: fengsh QQ : 19985430 电子邮件: fengsh99原创 2013-04-17 16:34:52 · 1485 阅读 · 0 评论 -
模型设计与实践---(三)IO模型Select IO
sokcetServerBySelect.h/******************************************************************** 创建时间: 2013/04/05 文件名: sokcetServerBySelect.h 描述: select I/O 主要采用FD_SET,FD_CLR,FD_ISSET,FD_ZERO 宏的运原创 2013-04-17 16:27:24 · 1297 阅读 · 0 评论 -
模型设计与实践---(二)IO模型ACCEPT
在上一篇中,先介绍了整个框架的类图。下面拿WINDOW 的6个IO模型进行演练,对WIN 6种SOCKET IO模型不了解的建议大家网上搜一下,有好多老陈和女儿通信的幽默描述。我这里就不再说解,直接贴码。socketSelectAccept.h/******************************************************************原创 2013-04-17 16:20:43 · 1311 阅读 · 0 评论 -
模型设计与实践---(六)重叠IO,事件通知(Overlap Event)
socketOverlappedEvent.h/******************************************************************** 创建时间: 2013/04/11 文件名: socketOverlappedEvent.h 描述: 重叠I/O 事件通知模式 作者: fengsh QQ : 19985430 电子邮原创 2013-04-17 16:37:35 · 2695 阅读 · 0 评论 -
模型设计与实践---(七)重叠IO ,完成例程
socketOverlappedCP.h/******************************************************************** 创建时间: 2013/04/11 文件名: socketOverlappedCP.h 描述: 重叠I/O 完成例程模式 作者: fengsh QQ : 19985430 电子邮件: fen原创 2013-04-17 16:39:21 · 1437 阅读 · 0 评论 -
模型设计与实践---(八)完成端口(Complition port)
socketCompletePort.h/******************************************************************** 创建时间: 2013/04/11 文件名: socketCompletePort.h 描述: 完成端口I/O模型 作者: fengsh QQ : 19985430 电子邮件: fen原创 2013-04-17 16:41:16 · 1340 阅读 · 0 评论 -
模型设计与实践--总结。
前在的章节主要是贴了一些IO模型的实现方式。本DEMO中使用了QT 信号,槽机制,设及到知识点,C++多态,接口的使用,C++静态库/动态库知识,QT signal /slots机制,WTL模板类的定义知识,C++代码模式架构知识,QT捕足WINDOW 消息知识。上层调用下层,下层回调给上层等CALLBACK知识。最好,基本DEMO,框架已基本完成,基本的C/S通信已完成。最好代码稍后上传原创 2013-04-17 16:49:35 · 1162 阅读 · 0 评论 -
模型设计与实践---(一)框加类图
很久没写C++代码了,今天想起一朋友问我要些模型设计及WINDOW IO模式的例子。一直没有时间弄。最近怀念下写代码的日子。就着手写了一个。总体采用类工厂的模式+适配模型。模型中充分体现了模块间的解耦性,快速适配性,及代码的重用性。其实稍懂程序的都可以用到这里有一个多态模式在里面,也可以说是一个职责链模式,但并纯意义的职责链模式。对于终端看到的对外接口只有ISERVE,ICLIENT。无需关心原创 2013-04-17 16:15:18 · 1513 阅读 · 0 评论 -
C++ 界面库比较
基本上主流的界面库也就算用的差不多了。这里拿一个表格对这些界面库做一个比较直观的比较。界面库名称接口设计界面编辑器高级布局功能平面绘制平台兼容性语言支持IDE兼容性视图-模型分离机制运行时其它Windows Forms接口优秀。C++下使用CLI扩展,其它语言为原生支持。界面编辑器完整,包括布局、属性、消息关联的完转载 2013-02-18 13:02:47 · 6653 阅读 · 0 评论 -
WINHTTP的API接口说明。
BOOL WINAPI WinHttpAddRequestHeaders( _In_ HINTERNET hRequest, _In_ LPCWSTR pwszHeaders, _In_ DWORD dwHeadersLength, _In_ DWORD dwModifiers);作用:添加一个HTTP的请求头域。参数说明:hRequest [in]翻译 2012-11-19 22:30:21 · 47635 阅读 · 6 评论 -
代码设计模式之工厂方法模式(Factory Method)
特点:工厂方法是粒度很小的设计模式,因为模式的表现只是一个抽象的方法。提前定义用于创建对象的接口,让子类决定实例化具体的某一个类,即在工厂和产品中间增加接口,工厂不再负责产品的创建,由接口针对不同条件返回具体的类实例,由具体类实例去实现。工厂方法模式是简单工厂模式的衍生,解决了许多简单工厂模式的问题。首先完全实现‘开-闭原则’,实现了可扩展。其次实现更复杂的层次结构,可以应用于产品结果复杂的场原创 2012-10-30 18:15:54 · 1163 阅读 · 0 评论 -
代码设计模式之抽象工厂模式(Abstract Factory)
对于简单工厂和工厂方法都是在同一种族(类)。但对于如果不同种族,就相对来说显得有所限制。 特点:抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。抽象工厂模式是指当有多个抽象角色时,使用的一种工厂模式。抽象工厂模式可以向客户端提供一个接口,使客户端在不必指定产品的具体的情况下,创建多个产品族中的产品对象。它有多个抽象产品类,每个抽象产品类可以派生出多个具体产品类,一个抽原创 2012-10-30 18:16:05 · 1018 阅读 · 0 评论 -
代码设计模式之单例模式(Singleton)
单例模式在开发中用得比较多的一种模式,如果读写配置,日志等。在一个应用程序整个生命周期中有且只有一个实例产生。而这个实例由自身的类方法(静态方法)来创建。 systemconfig.h#ifndef SYSTEMCONFIG_H#define SYSTEMCONFIG_Hclass SystemConfig{public: SystemConfig(原创 2012-10-30 22:00:15 · 1036 阅读 · 0 评论 -
代码设计模式之建造者模式(Builder)
特点:抽象建造者(Builder)角色:给出一个抽象接口,以规范产品对象的各个组成成分的建造。此接口中一般至少规定两个方法,一个是创建部分的方法,例如BuilderPart,另一个是返回结果的方法,例如GetProduct,以约束具体建造者实现。 具体建造者(ConcreteBuilder)角色:担任这个角色的是与应用程序紧密相关的一些类,它们在应用程序的调用下创建产品的实例。原创 2012-10-31 11:27:36 · 967 阅读 · 0 评论 -
代码设计模式之桥接模式(bridge)
优点:1、Bridge 模式把两个角色之间的继承关系改为了耦合的关系,从而使这两者可以从容自若的各自独立的变化。2、桥接模式分离了抽象部分和实现部分,从而极大地提高了系统的灵活性。让抽象部分和实现部分独立开来,分别定义接口,这有助于对系统进行分层,从而产生更好的结构化的系统。对于系统的高层部分,只需要知道抽象部分和实现部分的接口就可以了。3、由于桥接模式把抽象部分和实现部分分离开了,而原创 2012-10-31 15:50:16 · 1477 阅读 · 0 评论 -
一些转换笔记,很久收集的了,没时间放出来。现在放出来作备分
WCHAT:即wchar_tLPSTR:即 char *,指向以'\0'结尾的8位(单字节)ANSI字符数组指针LPWSTR:即wchar_t *,指向'\0'结尾的16位(双字节)Unicode字符数组指针LPCSTR:即const char *LPCWSTR:即const wchar_t *LPCVOID:即const void *DWORD:即unsigned lon原创 2012-11-26 23:30:51 · 1796 阅读 · 0 评论 -
代码设计模式之适配器模式(Adapter)
特性:适配器通过转换调用已经有的实现,从而能把已有的实现匹配成需要的接口,使之能满足客户端的需要。也就是说转换匹配的手段,而复用已有的功能才是目的。在进行转换匹配的过程中,适配器还可以在转换调用的前后实现一些功能处理,也就是实现智能的适配。 优点:适配器模式可以让两个没有任何关系的类在一起运行,只要适配器这个角色能够搞定他们就成。增加了类的透明性提高了类的复用度灵活原创 2012-11-12 11:19:39 · 1259 阅读 · 0 评论 -
代码设计模式之组合模式(Composite)
特性: 组合模式有时候又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。意图 将对象组合成树形结构以表示“部分-整体”的层次结构。Composite模式使得用户对单个对象和组合对象的使用具有一致性。 优点: 定义了原创 2012-11-13 10:52:15 · 1034 阅读 · 0 评论 -
用VC进行COM编程所必须掌握的理论知识
一、为什么要用COM 软件工程发展到今天,从一开始的结构化编程,到面向对象编程,再到现在的COM编程,目标只有一个,就是希望软件能象积方块一样是累起来的,是组装起来的,而不是一点点编出来的。结构化编程是函数块的形式,通过把一个软件划分成许多模块,每个模块完成各自不同的功能,尽量做到高内聚低藕合,这已经是一个很好的开始,我们可以把不同的模块分给不同的人去做,然后合到一块,这已经有了组装的转载 2013-06-18 22:47:13 · 1201 阅读 · 0 评论