自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

黄花寒

黄花寒后难逢蝶

  • 博客(27)
  • 资源 (15)
  • 收藏
  • 关注

原创 Moya源码解析

Moya源码解析Moya是一个高度抽象的网络库,他的理念是让你不用关心网络请求的底层的实现细节,只用定义你关心的业务。且Moya采用桥接和组合来进行封装(默认桥接了Alamofire),使得Moya非常好扩展,让你不用修改Moya源码就可以轻易定制。官方给出几个Moya主要优点:编译时检查API endpoint权限让你使用枚举定义各种不同Target, endpoints把stubs当做一等

2016-07-04 00:40:23 6043

原创 最常用的设计模式---命令模式(C++实现)

最常用的设计模式---命令模式(C++实现)

2014-01-23 21:21:01 1747

原创 最常用的设计模式---组合模式(C++实现)

最常用的设计模式---组合模式C++实现)

2014-01-22 23:29:26 1501

原创 最常用的设计模式---外观模式(C++实现)

外观模式:提供了一个统一的接口,用来访问子系统的一群接口。外观定义了一个高层接口,让子系统更容易使用。目地:让接口变得简单,是为了简化子系统的接口。

2014-01-09 17:25:22 3162 1

原创 最常用的设计模式---代理模式(C++实现)

代理模式:为其他对象提供一种代理以控制对这个对象的访问

2014-01-09 17:23:17 8057 5

原创 最常用的设计模式---观察者模式(C++实现)

最常用的设计模式---装饰者模式(C++实现)

2014-01-08 17:55:01 7878

原创 最常用的设计模式---装饰者模式(C++实现)

最常用的设计模式---适配器模式(C++实现)

2014-01-06 22:39:18 6983 1

原创 最常用的设计模式---适配器模式(C++实现)

sdfsfd

2014-01-06 22:24:49 8671 4

原创 最常用的设计模式---模板方法模式(C++实现)

模板方法模式是设计模式行为型中最简单的一种设计模式。在实际中你甚至可能经常用到,只是你自己不知道它是一种设计模式罢了。模板方法模式定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。角色:抽象类(AbstractClass): 定义抽象的原语操作,具体的子类将重定义它们以实现一个算法,实现一个模板方法,定义一个算

2013-11-20 18:38:59 4858 1

转载 组合、聚合、关联之间的区别和关系

关于 csdn 上有一个同行做了详细的分析,写的很不错。我这里懒了,直接转过来作为备份。用C++程序的话,聚合就像是类中的指针成员,而组合就是类中的成员.类间关系在类图中,除了需要描述单独的类的名称、属性和操作外,我们还需要描述类之间的联系,因为没有类是单独存在的,它们通常需要 和别的类协作,创造比单独工作更大的语义。在UML类图中,关系用类框之间的连线来表示,连线上和

2013-11-19 16:31:09 4918 1

转载 uml 类图 常用知识点

虚线箭头表示“依赖关系”,依赖有“使用”的语义,比如患者与医生的关系。实线箭头表示“带了导航行的关联关系”,从一个类到另一类。使用实线箭头时通常会带上“多重性”的表达方式。如:一对多,一对一,多对多等等。此实线箭头表示,继承,从一个非接口类的继承。那条连线表示双向关联:左边,Flight扮演assignedFights角色,有0到1个Plane跟他关

2013-11-19 16:21:59 1862

原创 最常用的设计模式-----策略模式(C++实现)

策略模式也是一种非常常用的设计模式,而且也不复杂。下面我们就来看看这种模式。定义:策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。角色:    抽象策略角色(Strategy): 抽象策略类。    具体策略角色(ConcreteStrategy):封装了继续相关的算法和行为。    环境角色(Con

2013-11-19 16:15:58 11523 1

原创 最常用的设计模式----工厂模式家族(简单工厂模式, 工厂方法模式, 抽象工厂模式)

工厂模式是个系列,分为简单工厂模式, 工厂模式, 抽象工厂模式,这三种模式也非常常用。这些模式最最经典的就例子就是设计计算器。     简单工厂模式         严格的说,简单工厂模式并不是23种常用的设计模式之一,它只算工厂模式的一个特殊实现。简单工厂模式在实际中的应用相对于其他2个工厂模式用的还是相对少得多,因为它只适应很多简单的情况,最最重要的是它违背了我们在概述中说的开放-封闭

2013-11-08 11:52:09 3649 1

原创 最常用的设计模式----单实例模式(C++ 实现)

单实例模式,本人认为最简单的设计模式之一,当然说的简单是针对一般情况,是不考虑线程安全等一系列其他问题。单实例模式也是最最最最常用的模式。我在没有学设计模式之前,都用到了这个模式,只是自己不知道罢了。它保证一个类之类实例化一次,并提供一个访问它的全局控制点。        比如你的应用程序有一个applicaiotn类,然后有一个个app 对象,显然每个应用只应该有一个这样的对象。 但是你又怕

2013-10-28 11:31:55 2277 1

原创 最常用的设计模式---概述

毕业工作已有了一段时间, 平时开发的时候都是天马行空,想怎么开发就怎么开发。虽然自己写代码的时候也有一些自己的思考,但总觉得自己的设计还是有点下里巴人的感觉。为了让自己看起来高端些, 无耻的装下x,于是写点设计模式的东西。高手的看了的话,笑笑就可以了哈。        话说常用的设计模式有23种,但是由于我用本人是在是急功近利,让我把厚厚的一本设计模式一下子全看完,并且看懂。我觉得压力还是有点

2013-10-28 10:49:10 2140

原创 细说qt多线程(一)

前一段时间,趁着工作之余,重写了公司的一个多线程下载模块,顺便又重温了下qt的多线程相关部分。所以有了这个系列的文章。    众所周知,qt 创建多线程有主流的有3种方法:           1. 采用经典的QThread类。 2.实现QRunable 接口。3.采用qt并行框架Qtconcurrent。    既然有三种方法,那么哪种方式更好,在实际的项目中改采取哪种方式来实现?那

2013-09-25 15:27:32 5415 2

转载 掀起C++ 11的神秘面纱

掀起C++ 11的神秘面纱C++标准在1998年获得通过后,有两位委员会委员预言,下一代C++标准将“肯定”包括内置的垃圾回收器(GC),但可能不会支持多线程,因为定义一个可移植的线程模型涉及到的技术太复杂了,13年后,新的C++标准C++11也接近完成,你猜怎么着?让那两位委员没想到的是,本次更新还是没有包括GC,但却包括了一个先进的线程库。C++之父Bjame Stroustrup说C++

2011-12-27 14:00:58 848

原创 您能不能也宽容一点??

我可以扪心自问,摸着自己的心口,对大家说,自己虽说不算一个品格高尚的人,但起码算得上一个心地善的人。我知道我自己有很多缺点,所以一般要求自己对别人尽可能宽容一点。尽量地容忍自己看不惯人和事。因为 我知道那毕竟那是别人的生活方式,每个人都有自己的价值观,我不是上帝,不能让世界按照我

2011-09-14 23:11:00 1099

原创 动态链接库全面浅析(一)-----Win32 动态链接库

言前:由于最近复习了下动态链接库,所以决定写一个动态链接库专题。动态链接库网上各种达人已近写过很多了,资料也是一大把一大把的。但是我还是想写一份,因为网上讲的都很分散,讲的不是很系统,而且很多问题没有深究。因此我自己还是写一份吧,因为说明了是浅析。所以说我不可能讲的太深入,但是本

2011-09-03 11:19:14 2314 3

转载 详解模块定义文件---摘自MSDN

模块定义 (.def) 文件为链接器提供有关被链接程序的导出、属性及其他方面的信息。生成 DLL 时,.def 文件最有用。由于存在可代替模块定义语句使用的链接器选项,通常不需要 .def 文件。也可以将__declspec(dllexport) 用作指定导出函数的手段。在链

2011-08-30 14:54:34 2548

原创 深入探讨vc下C++模板编译模型

写过模板的朋友也许知道,一个模板程序,当编译器看到模板定义时并不立即产生代码,只有在我们用到模板,并对其实例化的时候,才会产生特定的实例。此时,编译器就要访问定义模板的源代码了。如果源代码不可访问,当然,编译器会报错的。记得我初学的时候,采用的是直接将声明和实现全部放在一个.h里

2011-08-24 01:41:01 4401 6

原创 网络VC字节对齐

我们知道的当一个结构体,如果我们想知道他占多少内存空间的话我们可以利用sizeof()来查看,但是有时候sizeof()得出的结构竟然和我们想象的不一样,这和编译器有很大的关系。编译器有自己的字节对齐机制,他为了某些原因,在内存上进行了一些调整。和填充,导致得到了与我们想法不一样

2011-08-12 15:38:22 2632

原创 网络编程(三)---- MFC 仿QQ聊天软件

今天来八一八,MFC的SOCKET 编程,利用CSocket实现一个基于TCP实现一个QQ聊天程序。你会发现,MFC要比WIN32 简单的多。但是如果你不理解具体API socket基础知识,你可能会觉得有一点费解。 所以在开始之前 我还是请大家先看看http://blog.cs

2011-08-12 00:50:57 42685 79

转载 WinSock基本知识

这里不打算系统地介绍socket或者WinSock的知识。首先介绍WinSock API函数,讲解阻塞/非阻塞的概念;然后介绍socket的使用。WinSock APISocket接口是网络编程(通常是TCP/IP协议,也可以是其他协议)的API。最早的S

2011-08-05 18:41:30 10187

转载 SetSockOpt 详解

CAsyncSocket::SetSockOptBOOL SetSockOpt( int nOptionName, const void* lpOptionVlaue, int nOptionLen, int nLevel = SOL_SOCKET );返回值:

2011-08-05 00:01:31 3403

转载 vc 的volatile 用法

vc中 volatile 的作用volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。

2011-08-04 18:32:34 1126

原创 网络编程(一)

在进行网络编程之前,先把网络编程相关的重要的知识点梳理一下,但其中最最基本的网络基础知识如TCP/IP之类的知识点,还请读者自行去查阅相关的书籍. 1.网络网络字节序      世界上有很多不同的种类不同的计算机,不同种类的计算在存放多字节的时候的存放顺序不同。如Intel 的

2011-07-28 16:06:43 2056 1

opencv 最新静态库(vs2010下Release版本)

该版本基于opencv 最新的稳定版本246版编译而来: 因为自带的静态库会报错误 :’_iterator_debug_level' value '0' doesn't match value '2' , 我去掉了crt, 不会报错了,方便不想编译的。请链接一下静态库 #pragma comment(lib, "libjasper.lib") #pragma comment(lib, "libjpeg.lib") #pragma comment(lib, "libpng.lib") #pragma comment(lib, "libtiff.lib") #pragma comment(lib, "zlib.lib") #pragma comment(lib, "IlmImf.lib") #pragma comment( lib, "vfw32.lib" ) #pragma comment( lib, "comctl32.lib" ) #pragma comment(lib, "opencv_core246.lib") #pragma comment(lib, "opencv_highgui246.lib") Debug版本在这里去下载http://download.csdn.net/detail/lh844386434/6441213

2013-10-23

opencv 最新静态库(vs2010下Debug版本)

该版本基于opencv 最新的稳定版本246版在vs2010下编译而来: 因为自带的静态库会报错误 :’_iterator_debug_level' value '0' doesn't match value '2' , 我去掉了crt, 不会报错了,方便不想编译的。请链接一下静态库 #pragma comment(lib, "libjasperd.lib") #pragma comment(lib, "libjpegd.lib") #pragma comment(lib, "libpngd.lib") #pragma comment(lib, "libtiffd.lib") #pragma comment(lib, "zlibd.lib") #pragma comment(lib, "IlmImfd.lib") #pragma comment( lib, "vfw32.lib" ) #pragma comment( lib, "comctl32.lib" ) #pragma comment(lib, "opencv_core246d.lib") #pragma comment(lib, "opencv_highgui246d.lib")

2013-10-23

qt http多线程断点续传下载v2.0(qt4 qt5均可用)

该程序是一个Http单文件多线程 、 断点续传下载程序。qt4、qt5均可以编译通过,工程默认是qt5的工程。 (本人qt5.1.0 和 qt4.8.2 + vs2010下均测试过) 如果您想再qt4下编译,请: 1.修改工程工程的设置,设置好qt依赖的库文件,QTDIR是本人的qt安装目录。 2.修改属性-->C/C++-->语言-->将WChar_t当做内置类型选择否 ps: 1.本程序并不复杂,因此注释不多。我未经过大量测试,Bug肯定是有的,但应该问题不大,所以出了Bug 请不要破口大骂,程序供大家学习研究使用。 2.Common里面是我平时开发用到的部分公共类,我是直copy过来的,所以不要觉得文件多,很多东西都没 有用,大家只用关心自己的到的吧。看不惯的请自行删减。 3.所有下载的核心类都在Http文件夹中,如果不关心细节,不想细看的朋友,只用关心HttpDownloadTask 的接口就可以了,其他类不用深究。

2013-09-30

QT单文件多线程下载(支持QT5,支持断点续传)

Http多线程下载模块,采用了文件内存映射等技术.本人是在vs2010 + qt5下实现。 qt4下我简单的写了下字符集的处理(未测试),可能会乱码.(qt5和qt4的差别还是有些大,可能要做些小的修改),程序不复杂,不算多,注释不多。bug肯定是有的,所以供大家学习研究使用。

2013-01-21

QT简单的HttpServer

这是一个基于QT的一个简单的Http服务器,共大家学习,研究。

2013-01-21

真正的QT帮助文档

这个是QT在线帮助文档的离线版本。是函数库,不是什么网上的那种例程,冒充的参考文档。但是这个不是全中文的,没有翻译完全。我也是从别的地方弄过来的,所不要资源分。

2011-11-20

仿QQ VS2010聊天程序(服务器端、客户端源码)

在windows下实现的一个聊天程序 ,包含服务器端、客户端源码,在vs2010 下通过。相关源码介绍,讲解请参考http://blog.csdn.net/lh844386434/article/details/6655080

2011-08-12

maya 小场景模型

这是一个玛雅的小场景模型,场景内容为一个寝室以及寝室里的各种饰品等等。。

2010-07-15

maya 飞机模型 建模

以前刚学maya时的第一次模型,模型不是特别的好。 请大家多多见谅~

2010-07-15

maya 模型 古式电话

本人以前用maya 建的古式电话模型。造型还可以,文件是MB格式的,您可以随意修改。

2010-07-15

VC++音频播放器源码(VS2008)

一个用VC+MCI 写的音频播放器 (内含有部分注视--主要是针对MCI的封装部分有注释)

2010-07-14

数据结构课程设计(C++)

本程序 实现了各种Hash函数的构造,与冲突处理。界面采用最新的feature pack 开发,因此程序界面友好美观...

2010-07-14

各种程序语言面试题大集合

本资源,搜集了多种语言,多个公司的面试题。及答案。 其中包括c C++ VC++ jsp Java J2EE struts oracle c# uml spring 等面试题目

2010-04-18

几个MFC的聊天程序

几个简单MFC的聊天程序,有注释很容易看懂。

2010-04-16

空空如也

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

TA关注的人

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