自定义博客皮肤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++, Linux, Windows

  • 博客(87)
  • 资源 (4)
  • 收藏
  • 关注

原创 过滤器模式

过滤器模式代码演示。

2016-04-13 21:27:33 718

原创 享元模式

享元模式的示例。

2016-04-06 23:11:42 1344

原创 组合模式

组合模式的使用方式演示。

2016-03-29 17:10:15 793

原创 装饰模式

装饰模式演示。

2016-03-11 14:18:25 602

原创 适配器模式

适配器模式的简单示例演示了最基本的适配器模式,但是适配器的功能在于适配扩展,可以按照此模式适配很多种功能。

2016-03-10 11:19:06 815 1

原创 桥接模式

桥接模式就是:把主体和功能区分开来实现,然后可以随意组合。

2016-03-09 17:15:51 716 1

原创 建造者模式

用剪纸工裁剪各种样式的剪纸来演示建造者模式的用法。

2016-03-09 15:16:55 560

原创 原型模式

用孙悟空来诠释原型模式,其实原型模式比孙悟空技能更牛X。

2016-03-08 11:52:04 822 1

原创 抽象工厂模式

用土豪儿子相亲的故事讲述抽象工厂,顺带说一下抽象工厂喜欢怎么更改,不喜欢怎么更改。

2016-03-07 17:19:35 538 1

原创 简单工厂模式

简单工厂模式的C++和C#示例代码

2016-03-07 15:21:36 676

原创 单件模式

单件模式 C++和C#泛型示例

2016-03-07 11:37:05 1281

转载 数字签名是什么?

What is a Digital Signature?

2015-12-09 14:39:05 712

原创 MFC程序中Debug模式下调试信息输出到控制台

有时候我们会想看到调试信息,但是在正式发布程序中又不想看到。下面的方式就是在MFC中Debug模式输出调试信息到控制台,在Release模式下没有输出。#ifdef _DEBUG#include #endif在InitInstance()函数如下#ifdef _DEBUG AllocConsole();#endif在ExitInstance()函数如下

2015-11-24 11:29:55 3793

原创 CStringA,CStringW和CString之间的转换

现实中用到CStringA和CStringW的转换,就封装了一下。#pragma onceclass CStringToolExt{public: CStringToolExt(); ~CStringToolExt();public: static CStringA CStrT2CStrA(const CString &cstrSrc); static CStringW CSt

2015-11-05 14:27:38 6675

原创 Logger类

找到了一个LOGGER类,但是输出中文有点毛病,就修改了一下贴出来。把指针替换为智能指针,解决显式释放的问题。

2015-09-09 16:25:39 5391 1

转载 为什么寄存器比内存快?

作者: 阮一峰日期: 2013年10月14日计算机的存储层次(memory hierarchy)之中,寄存器(register)最快,内存其次,最慢的是硬盘。同样都是晶体管存储设备,为什么寄存器比内存快呢?Mike Ash写了一篇很好的解释,非常通俗地回答了这个问题,有助于加深对硬件的理解。下面就是我的简单翻译。原因一:距离不同距离不是主要因素,但是最好懂,

2013-10-21 16:11:43 1123

原创 可重入函数

可重入性函数是指:可以在多任务,多线程,并发等情况下访问不出错的函数。在嵌入式、多线程、多进程和并发执行的程序中,多个目标同时调用一个函数而不会出现数据错误,需要函数具备以下特点:不调用系统函数和不可重入性函数。在嵌入式中,不要使用系统自带的string和标准IO函数,需要自己实现,在其他开发中不调用非线程安全的函数。不调用静态数据,或者对静态数据加互斥操作。嵌入式中可以关中断,互斥信

2013-10-18 15:49:14 1702

原创 优先级反转和解决方法

优先级反转的描述:假设任务1,任务2,任务3;他们的优先级顺序分别为1 > 2 > 3。有一个稀缺资源S,S由一个信号量控制为互斥访问。任务3正在执行,并申请到了资源S;任务1抢占了任务3的执行,任务3挂起,任务1执行;任务1申请资源S,发现被占用,所以挂起,任务3恢复执行;任务2抢占了任务3的执行,任务3挂起,任务2执行;任务2执行完毕,任务3恢复;任务3释放资源S,任务1抢占资源S

2013-10-15 11:26:09 14076 3

原创 c#制作简单启动画面

声明:代码照搬自SharpDevelop源码。 启动画面是程序启动加载组件时一个让用户稍微耐心等待的提示框。一个好的软件在有启动等待需求时必定做一个启动画面。启动画面可以让用户有心理准备来接受程序加载的缓慢,还可以让用户知道加载的进度和内容。本文只是记录最简单的构架。VS2010创建一个C# Windows窗体应用程序,将主窗体改名为FormMain,再创建一个窗体起名为SplashS

2013-03-29 11:26:28 16838 4

原创 设计模式——简单工厂

工厂模式是创建型模式。简单工厂是最简单的模式,主要是静态创建类型,代码如下: #region 简单工厂 public abstract class 产品 { public abstract string 展示(); } public class 产品一 : 产品 { public override string 展示() { return "型号:产品一。";

2013-01-03 22:14:03 1370

原创 Enum和单选框关联

有了enum我们可以列举类型了,有了单选框和复选框我们可以鼠标来选择了。但是编程的时候觉得让两个关联起来,写代码比较麻烦,所以想自动的关联起来。所以我尝试了一下,记录如下。假如一个星期的enum:    public enum 星期    {        星期一 = 0,        星期二,        星期三,        星期四,        星期五

2013-01-03 22:08:05 1632

转载 windows7系统笔记本设置成虚拟WiFi热点(即“无线路由器”)

如果家中只有一根网线,却有两台或更多台笔记本需要连接到网络,借助软件,就可以将笔记本变身为无线路由器,即“WiFi热点”。   以windows7为例,其实它本身就自带了WiFi和SoftAp(即虚拟无线AP)功能,仅需激活他们,你就可以让自己的笔记本变身为一个“WiFi热点”,让其他笔记本都连入你的笔记本上网。   再打开你的笔记本的无线网卡“开关”后,以管理员身份进行快捷键wi

2012-12-22 07:38:18 845

原创 C#事件的实现

事件是C#中一个重要的内容,MSDN上有一个自定义事件的演示示例。我看了半天有点晕,所以新建了一个winform工程添加了一个按钮,然后找出调用的程序,一对比做了一个类似的示例,就明白了。看代码有时候比看文档来得更快。所以还是一贯的原则,来干的,不来稀的。 using System;namespace TestEventArgs{ /// /// 这个类对应于Ev

2012-12-19 11:25:11 3807

原创 ISerializable用法(初级)

家里只有一台电脑,影响老婆看电视剧了。赶紧拷贝完,洗袜子去...不解释,看注释。/* * Created by SharpDevelop. * User: iwateru * Date: 2012/12/15 * Time: 18:52 * * To change this template use Tools | Options | Coding | Edit Standa

2012-12-15 21:09:09 7306 3

原创 IEnumerable和IEnumrator用法

先用一个修改过的代码来演示用法,只来干的,不来稀的。/* * Created by SharpDevelop. * User: Owner * Date: 2012-12-14 * Time: 13:43 * * To change this template use Tools | Options | Coding | Edit Standard Headers.

2012-12-14 15:35:35 8128

原创 win7和xp差异很大呀,哥要崩溃了。

RTU一台带网卡。由于现场需求屏蔽广播包。给RTU发送包》》》  RTU网卡屏蔽接受广播包:    用xp连接,发送arp,有应答。    用win7连接,发送arp,无应答。  RTU网卡打开接受广播包:    用xp连接,发送arp,有应答。    用win7连接,发送arp,有应答。 给PC发送包》》》  用xp发送arp包和用win7发送的arp

2012-11-21 17:09:32 1739 1

转载 程序员如何保持优秀

1. 小范围的选择一些有用技术,透彻的学习它们,拥抱它们。然后不断的扩展这个范围。2. 理解各种数据结构的优点和缺点,包括它们在内存中和在硬盘上的各自表现。3. 理解各种算法的优点和缺点。4. 了解你的工作领域。关上电脑,去做你的用户们在做的事。5. 有准备,有愿望,有能力在任何时候投入到多种技术层面中。你必须知道表象下的技术原理。在“各个技术层面的掌握程度”和“编程能力”上有着密

2012-11-11 08:00:59 1338

原创 ubuntu配置compiz乱套之后的恢复和彻底删除kubuntu-desktop

这段时间鼓捣着ubuntu的界面玩,遇到的几个问题的解决方法记录下来,以备不时之需。第一:我安装了kubuntu-desktop然后发现不喜欢想删除,方法如下:sudo apt-get --purge remove libqtcore4,然后删除登陆界面sudo apt-get autoremove plymouth-theme-*。第二:我配置compiz,最后弄得乱七八糟,键盘鼠标

2012-11-08 22:21:34 8874

原创 ubuntu配置无线网卡驱动

前段时间安装了一个ubuntu系统,因为没有有线的联网,只能用无线网卡,然后就各处寻找安装无线网卡驱动的信息。因为我的无线网卡型号是:MW150UM。所以就采用网络上的一个方法安装ndiswrapper,用windows下的驱动,然后怎么怎么的,安装好了,非常高兴。但是呢,我发现当我ubuntu内核升级之后,无线网卡不起作用了。这个时候重复以前的步骤也不起作用,所以无奈之下继续百度搜索,发现以

2012-11-06 09:35:51 13570 2

原创 规则和管理

故事中国式过马路就是凑够一堆人就可以走了,和红绿灯无关。当看到这个事实时,联想自己的公司行为:中国式公司管理是否有类似之处呢?有规则无管理?或者是没规则按紧急情况来?您有何感想?

2012-11-01 08:37:24 928

原创 你到底哪天生日?

故事:那天餐叙结束,和大领导握手道别。领导亲切的说:“祝你生日快乐!”洒家说:“谢谢领导!再过八个月就到了。”领导扭头跟司机说:“怎么样?我没说错吧?上上下下也就他敢讲真话。其他人的生日我说哪天就是那天。”大家看到这样的团队,各位职场混过来的小兵大将们作何感想呢?

2012-11-01 08:30:53 1161

原创 Ubuntu搭建LAMP环境

今天想做一个小网站,就在ubuntu上按照网页上搜索的方法搭建了一个环境。我媳妇挺着大肚子无聊的看着我敲了大半天电脑。我赶紧记录下来,陪媳妇看电视去。希望能帮到有和我同样需求的人。下面拷贝自我的ZIM Desktop WikiLAMP搭建环境Created 星期二 30 十月 2012安装过程第一步 安装Apache2sudo apt-get install

2012-10-30 21:01:34 34022 11

原创 变态的C声明怎么识别?

做C语言程序经常会遇到变态的声明,学习了msdn上的一篇文章,豁然开朗。char *( *(*var)() )[10]; ^   ^  ^ ^ ^   ^    ^ 7   6  4 2 1   3    51. var被定义为2. 一个指向3的指针3. 一个返回值为4的函数4. 一个指向5的指针5. 一个拥有10个变量的一维数组,它66. 指向77. ch

2012-09-26 17:33:13 1322 1

翻译 基于对话框的单实例应用程序

介绍  有许许多多的文章介绍单示例应用程序的实现,这里演示一种非常简单的基于MFC对话框的应用程序,本技术可以运用到ATL/WTL和普通的win32应用程序。实现创建一个基于对话框的MFC工程。打开资源文件(.rc),找到主窗口的模板,并添加一句话。把这个窗口类注册为SINGLE_INSTANCE_APP。IDD_SINGLEINSTANCE_DIALOG DIALOGEX

2012-09-06 09:59:14 1207

原创 boost的类型转换

原来我总结过c++的一些类型转换函数:http://blog.csdn.net/callmeback/article/details/4040583static_cast, dynamic_cast, const_cast, reinterpret_cast其中各有各的用处和弊端。boost的Conversion库分别实现了四个类型转换函数:polymorphic_case, polymo

2012-07-12 16:24:41 5859

原创 智能指针weak_ptr

智能指针weak_ptr主要用来协助shared_ptr。不参与引用计数,但是有以下好处:1 打破递归的依赖关系2 使用一个共享的资源但是不要所有权,不添加引用计数3 避免悬空指针。使用方法有二:// 方法一boost::shared_ptr sp(new std::string("method1");// 从shared_ptr构建出来boost::weak_pt

2012-07-12 11:04:32 910

原创 代码注释法学习智能指针intrusive_ptr

智能指针intrusive_ptr一般情况下不要使用,除非被指类的某个成员函数需要返回this指针。因为intrusive_ptr需要自己实现引用计数,所以实现起来比较复杂。还要实现intrusive_ptr_add_ref和intrusive_ptr_release两个函数。参考《Beyond the C++ Standard Library: An Introduction to Bo

2012-07-09 15:36:26 3545 1

原创 简单好玩的C++关键字mutable

mutable是一个好玩的C++关键字,也是我第一次遇到。于是查了查msdn,结果发现果然是好玩的关键字。首先,它只能修饰非const,非static的类数据成员。其次,它用来突破const函数。再次,它就这么一个功能。class X{public: // 在逻辑上GetFlag只是获取我的m_flag状态,所以修饰为const // 但是,我需要知道其中一些动态的

2012-07-09 10:16:15 1105

原创 智能指针shared_ptr

boost库的第二类智能指针是shared_ptr。shared_ptr的特点是:一、 它可以指向相同的内容,靠引用计数来决定内容是否释放。其中new int申请的空间,在三个指向它的指针全部释放时才被释放,否则只是引用计数减一。#include #include int _tmain(int argc, _TCHAR* argv[]){ boost::shared_ptr

2012-07-08 12:39:20 2832 2

原创 智能指针scoped_ptr

scoped_ptr特点:1 用法绝大多数情况下和auto_ptr相同。2 不支持自增,自减操作。3 不能被赋值或者复制构造。4 由于3的原因不能作为容器的元素,这也是优于auto_ptr的原因。scoped_ptr使用场景:1 在有可能抛出异常的作用域中使用时,减少有可能资源释放不正确导致的错误。2 函数中控制路径多并且复杂时,减少代码的逻辑阅读难度和资源释放有可能带

2012-07-05 13:21:09 1505

Windows仿真FatFs移植代码

在我开发的嵌入式产品中,调试很复杂,也很麻烦。所以为了了解FatFs的运行细节,我就用VC6在windows上仿真了一下。发不出来积一下分。简单易懂。

2012-02-16

Unix网络编程.chm

unix network programming,英文版chm。

2011-10-19

步进电机电机编码器资料

几个步进电动机编码器的资料,都是英文的,很难找。

2010-03-24

dbgview

轻量级windows调试工具,不用安装注册!

2008-05-07

空空如也

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

TA关注的人

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