摘要: 多例模式,这个在GOF的模式设计里没有提到,但在实际工作中确实会用到。更详细的内容及说明可以参考原作者博客:cbf4life.cnblogs.com。4.1.解释main(),客户略说明:和单例基本一样,是有个数限制的单例。如果对于产生的实例个数没有限制,那就不是多例了,和普通的类没有区别。举例:曾... 阅读全文
posted @ 2015-03-23 22:00 廖先生 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 单例模式看起来也蛮简单的,就是在系统中只允许产生这个类的一个实例,既然这么简单,就直接贴代码了。更详细的内容及说明可以参考原作者博客:cbf4life.cnblogs.com。3.1.解释main(),大臣CEmperor,需要单例的类说明:很多大臣拜见的皇帝,只有一个。体现在面向对象方面,CEmp... 阅读全文
posted @ 2015-03-23 21:40 廖先生 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 代理,一看名字就知道这只是个中介而已,真实的执行者在代理的后面呢。cbf4life在他的书里提的例子也很有趣,更详细的内容及说明可以参考原作者博客:cbf4life.cnblogs.com。现在贴代码,以方便随用随取。2.1.解释main(),西门庆IKindWomen,接口CWangPo,代理CP... 阅读全文
posted @ 2015-03-23 21:38 廖先生 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 无意中,从网上下到一本电子书《24种设计模式介绍与6大设计原则》,很好奇这里有24种设计模式,印象中GOF写的《设计模式》(Design Patterns),好像只有23种吧。运行起来一看,还真挺吸引咱的,里面提到的例子都很有趣。很感谢作者写出这样好的例子来,我的目的是把作者提到的例子用C++来实现... 阅读全文
posted @ 2015-03-23 20:01 廖先生 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 只需要在此目录下convmv-fGBK-tUTF-8--notest*.xxx执行这个命令即可 阅读全文
posted @ 2015-03-23 16:56 廖先生 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 面向对象程序设计中的多态性是指向不同的对象发送同一个消息,不同对象对应同一消息产生不同行为。在程序中消息就是调用函数,不同的行为就是指不同的实现方法,即执行不同的函数体。也可以这样说就是实现了“一个接口,多种方法”。 从实现的角度来讲,多态可以分为两类:编译时的多态性和运行时的多态性。前者是通过静... 阅读全文
posted @ 2015-03-21 22:01 廖先生 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 1. C中static有什么作用 (1)隐藏。 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性,故使用static在不同的文件中定义同名函数和同名变量,而不必担心命名冲突。 (2)static的第二个作用是保持变量内容的持久。存储在静态数据区的变量会在程序刚开... 阅读全文
posted @ 2015-03-20 11:43 廖先生 阅读(1096) 评论(0) 推荐(0) 编辑
摘要: 这些东西有点烦,有点无聊。如果要去C++面试就看看吧。几年前网上搜索的。刚才看到,就整理一下,里面有些被我改了,感觉之前说的不对或不完善。1.求下面函数的返回值( 微软)intfunc(x){intcountx=0;while(x){countx++;x=x&(x-1);}returncountx;... 阅读全文
posted @ 2015-03-20 11:42 廖先生 阅读(505) 评论(0) 推荐(0) 编辑
摘要: 在API测试过程中经常会遇到传入参数为复杂类型,一般情况下在python下,习惯用字典来表示复杂类型。但是c++对字符串的处理是比较弱智的,一般c++里边会用vector来存储复杂类型,那么就存在转换的问题,下面小段代码记录了将字符串转换为Vector的过程待转换的字符串如下:const char ... 阅读全文
posted @ 2015-03-20 10:22 廖先生 阅读(3188) 评论(0) 推荐(1) 编辑
摘要: 1vector 向量 相当于一个数组 在内存中分配一块连续的内存空间进行存储。支持不指定vector大小的存储。STL内部实现时,首先分配一个非常大的内存空间预备进行存储,即capacituy()函数返回的大小,当超过此分配的空间时再整体重新放分配一块内存存储,这给人以vector可以不指定vect... 阅读全文
posted @ 2015-03-20 10:20 廖先生 阅读(1385) 评论(0) 推荐(0) 编辑
摘要: /*当建立一个对象时,首先调用基类的构造函数,然后调用下一个派生类的构造函数,依次类推,直至到达派生类次数最多的派生次数最多的类的构造函数为止。简而言之,对象是由“底层向上”开始构造的。因为,构造函数一开始构造时,总是要调用它的基类的构造函数,然后才开始执行其构造函数体,调用直接基类构造函数时,如果... 阅读全文
posted @ 2015-03-20 10:11 廖先生 阅读(2882) 评论(0) 推荐(0) 编辑
摘要: 貌似很多人还是会遇到中文乱码的问题,Apache可以使用mod_encoding支持中文目录和文件,LNMP下Nginx其实不需要安装额外的组件即可支持中文文件名或中文目录,下面说一下常见的CentOS、Debian、Ubuntu Linux发行版下的设置方法和可能会遇到的问题:设置前可以执行:lo... 阅读全文
posted @ 2015-03-18 10:56 廖先生 阅读(3894) 评论(0) 推荐(0) 编辑
摘要: 花了两周时间,利用工作间隙时间,开发了一个基于Django的项目任务管理Web应用。项目计划的实时动态,可以方便地被项目成员查看(^_^又重复发明轮子了)。从前台到后台,好好折腾了一把,用到:HTML、CSS、JavaScript、Apache、Python、mod_wsgi、Django。好久不用... 阅读全文
posted @ 2015-03-17 15:52 廖先生 阅读(1865) 评论(0) 推荐(0) 编辑
摘要: 一台新的linux CentOS服务器,安装好php环境后,发现apache默认解析路径是/var/www/html,如果不想使用这个默认路径,可以自己设置一个目录。例:在根目录下新建/data/website文件夹用来存放项目。准备工作:创建目录在根目录下1 mkdir data2 cd data... 阅读全文
posted @ 2015-03-16 16:22 廖先生 阅读(410) 评论(0) 推荐(0) 编辑
摘要: 在 Debug 模式下,VC 、VS会默认把未初始化的栈内存按字节全部填成 0xcc,当一段初始化为0xcccc的内存被当做字符输出的时候,就会出现ansi码0xcccc对应的中文字“烫”;把未初始化的堆内存全部填成 0xcd,当一段初始化为0xcdcd的内存被当做字符输出的时候,就会出现ansi码... 阅读全文
posted @ 2015-03-16 11:42 廖先生 阅读(382) 评论(0) 推荐(0) 编辑
摘要: ATL用于编写COM程序,CLR是.NET的公共语言运行库,MFC是指MFC类库,MFC程序是用这些类库做出的程序,WIN32常规就是不用MFC,使用API函数编的程序。MFC、ATL和CLR是VC2005内置的3大库,涵盖了windows的各种开发方法和开发应用。当然关于C++开发的库不止这3个,... 阅读全文
posted @ 2015-03-11 10:10 廖先生 阅读(303) 评论(0) 推荐(0) 编辑
摘要: WM_INITDIALOGTheWM_INITDIALOGmessageissenttothedialogboxprocedureimmediatelybeforeadialogboxisdisplayed.WM_CREATETheWM_CREATEmessageissentwhenanapplic... 阅读全文
posted @ 2015-03-10 16:18 廖先生 阅读(200) 评论(0) 推荐(0) 编辑
摘要: Keep Your Data Secure with the New Advanced Encryption StandardJames McCaffreyCode download available at:AES.exe(143 KB)This article assumes you're fa... 阅读全文
posted @ 2015-02-28 17:43 廖先生 阅读(604) 评论(0) 推荐(0) 编辑
摘要: 这个算法可以将数据加密后,储存起来,到需要用的时候,用之前加密的秘钥将之还原。除了这个之外,还有AES这个算法能够将数据很好的加密起来,在传输过程中不容易被破解。在PHP中,我们必须先安装好mcrypt这个模块,并且添加相应版本的扩展到php中。AES加密模式和填充方式有以下之中,但不是全部复制代码... 阅读全文
posted @ 2015-02-28 17:05 廖先生 阅读(3168) 评论(0) 推荐(0) 编辑
摘要: b/s比c/s有一个非常大的优势在于升级简单,升级有限的服务器就ok了,而c/s模式则是每台客户机都需要升级,版本一致比较难控制,所以在线升级就成了很重要的问题。当时研究这个的时候存在的问题是,公司所有的产品的在线升级是VB写的加上几个VC写的com组件,每个产品需要就修改部分源代码,然后编译出一个... 阅读全文
posted @ 2015-02-14 23:12 廖先生 阅读(370) 评论(0) 推荐(0) 编辑
摘要: 刚开始接触VC的时候,很大一部分时间是在对付编译链接错误,因为经验不足的原因,这些编译链接总让人很沮丧。比如:1.fatal error LNK1104: 无法打开文件“LIBC.lib”错误这个错误是因为库冲突导致的,解决方法如下:方法一:用VSDNET2005重新编译某个工程的发生了链接错误现在... 阅读全文
posted @ 2015-02-14 22:17 廖先生 阅读(1656) 评论(0) 推荐(0) 编辑
摘要: 基本概念Asio proactorI/O服务work类run() vs poll()stop()post() vs dispatch()buffer类缓冲区管理I/O对象socket信号处理定时器strand参考最近尝试使用了一下Boost.Asio,不知道是否因为各大公司都有自己相对成熟的网络库的... 阅读全文
posted @ 2015-02-12 11:18 廖先生 阅读(969) 评论(0) 推荐(0) 编辑
摘要: // testc.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include #include using boost::asio::ip::tcp... 阅读全文
posted @ 2015-02-10 20:22 廖先生 阅读(1209) 评论(0) 推荐(0) 编辑
摘要: HTTP和FTP是两种网络传输协议的缩写,FTP是File Transportation Protocol(文件传输协议)的缩写,而HTTP则是Hyper Text Transportation Protocol(超文本传输协议)的缩写,它们是计算机之间交换数据的方式,也是两种最经典的文件下载方式。... 阅读全文
posted @ 2015-02-10 20:19 廖先生 阅读(4945) 评论(0) 推荐(0) 编辑
摘要: 1>正在生成代码1>e:\Source\VC\Զ\json\jsoncpp-src-0.6.0-rc2\src\lib_json\json_value.cpp:fatalerrorC1083:无法打开编译器生成的文件:“../../build/vs71/release/lib_json\json_v... 阅读全文
posted @ 2015-02-05 18:55 廖先生 阅读(453) 评论(0) 推荐(0) 编辑
摘要: 有些成员变量的数据类型比较特别,它们的初始化方式也和普通数据类型的成员变量有所不同。这些特殊的类型的成员变量包括:a.引用b.常量c.静态d.静态常量(整型)e.静态常量(非整型) 常量和引用,必须通过参数列表进行初始化。静态成员变量的初始化也颇有点特别,是在类外初始化且不能再带有static关键字... 阅读全文
posted @ 2015-02-04 16:32 廖先生 阅读(4571) 评论(0) 推荐(1) 编辑
摘要: 用VC来写MFC程序的时候,多数情况下,会发现TAB顺序和预期的顺序不一致,那么这时就有必要重新调整TAB顺序,来适应我们所写的程序。调整TAB顺序的方法有两种: 1.在当前的界面或对话框下按“Ctrl+D”键,就会出现各个控件的TAB序号,我们只需要操作鼠标点击,即可调整出我们想要的顺序了。2.打... 阅读全文
posted @ 2015-02-03 11:56 廖先生 阅读(596) 评论(0) 推荐(0) 编辑
摘要: 之前用过BCG界面库中的表格控件,深感其强大,现在再来用一下其它的。一. 关于BCGControlBar。BCGControlBar是一个基于MFC的扩展库,您可以通过完全的用户化操作构成一些类似于Microsoft Office 2000/XP/2003和Microsoft Visual Stud... 阅读全文
posted @ 2015-02-02 14:43 廖先生 阅读(5934) 评论(0) 推荐(0) 编辑
摘要: 摘要:by:koma 这两天,本来想花点时间研究一下QQ空间、农场外挂,于是抓包分析一了下,只可惜,在QQ网页登录时进行了加密处理,可惜我对网页编程一窍不通。有些朋友曾讲过那些是通过JS代码进行加密,可惜我JS也是一片空白,真是出师未杰身先死,惭愧惭愧...... 于...by:koma这两天,本来... 阅读全文
posted @ 2015-02-01 22:03 廖先生 阅读(359) 评论(0) 推荐(0) 编辑
摘要: BOOLToHexStr(constCHAR*lpStr,intnSrcLen,CHAR*lpHex,intnDestLen){constCHARcHexTable[]="0123456789ABCDEF";if(lpStr==NULL||nSrcLen>4];lpHex[i++]=cHexTabl... 阅读全文
posted @ 2015-02-01 21:58 廖先生 阅读(1049) 评论(0) 推荐(0) 编辑
摘要: (1)如何通过代码获得应用程序主窗口的 指针?主窗口的 指针保存在CWinThread::m_pMainWnd中,调用AfxGetMainWnd实现。AfxGetMainWnd() ->ShowWindow(SW_SHOWMAXMIZED)//使程序最大化.(2)确定应用程序的路径Use GetMo... 阅读全文
posted @ 2015-02-01 21:22 廖先生 阅读(4409) 评论(0) 推荐(0) 编辑
摘要: UNICODE,GBK,UTF-8区别简单来说,unicode,gbk和大五码就是编码的值,而utf-8,uft-16之类就是这个值的表现形式.而前面那三种编码是一兼容的,同一个汉字,那三个码值是完全不一样的.如"汉"的uncode值与gbk就是不一样的,假设uncode为a040,gbk为b030... 阅读全文
posted @ 2015-02-01 21:15 廖先生 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 参考及摘抄自文章:http://www.cnblogs.com/lartely/archive/2011/04/10/2011770.html http://blog.csdn.net/sunboy_2050/article/details/7753662基础知识:注册表的组织方式跟文件目录比较... 阅读全文
posted @ 2015-02-01 20:58 廖先生 阅读(428) 评论(0) 推荐(0) 编辑
摘要: 获取管理员权限:void GainAdminPrivileges(UINT idd, BOOL bWait){ CString strCmd; CString strApp; strCmd.Format (_T("/adminopti... 阅读全文
posted @ 2015-02-01 20:56 廖先生 阅读(503) 评论(0) 推荐(0) 编辑
摘要: 最先附上下载地址背景(只是个人感想,技术上不对后面的内容构成知识性障碍,可以skip):最近,基于某些原因和需要,笔者需要去了解一下Crypto++库,然后对一些数据进行一些加密解密的操作。笔者之前没接触过任何加密解密方面的知识(当然,把每个字符的ASCII值加1之流对明文进行加密的“趣事”还是干过... 阅读全文
posted @ 2015-01-31 21:14 廖先生 阅读(15334) 评论(0) 推荐(3) 编辑
摘要: Python语言简介Python是一种脚本语言。以开放的开发接口和独特的语法著称。尽管Python在国内引起注意只有几年的时间,但实际上Python出现于上世纪90年代(据www.python.org介绍,这个时间可以上溯至1990年),已经有十几年的时间,它的流行也有很久,在嵌入脚本、互联网应用、... 阅读全文
posted @ 2015-01-31 00:45 廖先生 阅读(3600) 评论(0) 推荐(0) 编辑
摘要: C++中for_each的应用for each语法是方便的,也是很自然的,这也是为什么很多语言都有这样的语法,就我所知,包括java(jdk5.0以上),python,php,asp.net等语言都有类似的语法,甚至微软为C++/CLI中也添加了这样的语法。但是很遗憾的是,C++98标准中没有,于是... 阅读全文
posted @ 2015-01-31 00:34 廖先生 阅读(7023) 评论(0) 推荐(1) 编辑
摘要: 本片文章主要介绍boost::function的用法。 boost::function 就是一个函数的包装器(function wrapper),用来定义函数对象。1. 介绍 Boost.Function 库包含了一个类族的函数对象的包装。它的概念很像广义上的回调函数。其有着和函数指针相同的特性但是... 阅读全文
posted @ 2015-01-31 00:26 廖先生 阅读(300) 评论(0) 推荐(0) 编辑
摘要: boost::bind 介绍 这篇文章介绍boost::bind()的用法, 文章的主要内容是参考boost的文档。1. 目的 boost::bind 是std::bindlist 和 std::bind2nd的结合体。它提供一个任意的函数对象(仿函数)、函数、函数指针、成员函数指针。 它可以绑定任... 阅读全文
posted @ 2015-01-31 00:19 廖先生 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 序(Foreword)C++社区正在发生着一些美妙的事情。尽管C++仍然是世界上使用最广泛的编程语言,它依旧在变得更加强大而且易用。不信么?容我慢慢道来。当前版本的标准C++是在1998年最终确定下来的,它为传统的过程式编程(proceduralprogramming)以及面向对象和泛型编程(gen... 阅读全文
posted @ 2015-01-31 00:14 廖先生 阅读(412) 评论(0) 推荐(0) 编辑