- 浏览: 375448 次
- 性别:
- 来自: 苏州
-
最新评论
-
u013189503:
来个密码吧
[C++][Logging] 项目中写日志模块的实现 -
wyf_vc:
来个密码啊!!
[C++][Logging] 项目中写日志模块的实现
文章列表
对于不同的项目而言,error code返回机制是不一样的,但是能够很好的管理好不同模块间的Error Code并不是一件简单的事情,下面有一种比较简便的方法如下:
/**************************************************************************************************/
/*!
\file CommonErrors.h
\attention
(c) Jacky Dai 2011~2016
All Rights Reserved.
* ...
转:50个优秀的C/C++源代码网站
- 博客分类:
- C++
50个优秀的C/C++源代码网站
2010-08-09 08:48:10| 分类: 学习 |字号 订阅
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/cnsword/archive/2009/05/13/4176636.aspx
C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说 明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。
1、http://snippets.dzone.com/t ...
控制CEdit中文字输入格式(浮点类型)
- 博客分类:
- C++
void CExpendDlg::OnEnChangeEditExpendMoney()
{
// TODO: If this is a RICHEDIT control, the control will not
// send this notification unless you override the CDialog::OnInitDialog()
// function and call CRichEditCtrl().SetEventMask()
// with the ENM_CHANGE flag ORed into the mask.
...
http://www.4ucode.com/Study/Topic/611256
Loadrunner 8.1 测试利器相关下载及破解方法(精) 收藏
1、首先下载LR8.1未有任何修改的版本(其实我想自己上传的,可是没有那么大的空间来让我用,就是
用其他能下载的链接吧,09年7月23号时是可以下载的,速度很快,用迅雷有300-400k/s的)这个文件的
地址在:http://www.tuningking.com/download/LR_8.1.iso
2、下载LR8.1的中文补丁,也是一个iso文件(用虚拟光驱打开,虚拟光驱的地址使用就不多说了,推荐
daemon tools小强 ...
[vc++][消息]C++中消息的种类
- 博客分类:
- C++
3.4 三种类型的消息
在MFC应用程序中传输的消息有三种类型:窗口消息、命令消息和控件通知。
3.4.1 窗口消息
窗口消息(Window Message)一般与窗口的内部运作有关,如创建窗口、绘制窗口和销毁窗
口等。通常,消息是从系统发送到窗口,或从窗口发送到窗口。
当用SendMessage()或PostMessage()发送一个窗口消息时,变量Message、wParam和
lParam的格式如下:
Message wParam lParam
WM_XXX 定义的命令 定义的命令
WMXXX可以是许多窗口消息之一,如下列窗口:
■ WM_CREATE,告诉窗口初始化自己。
■ WM_P ...
1 别名
包装器wrapper
2 介绍
通过使用修饰模式,可以在运行时扩充一个类的功能。原理是:增加一个修饰类包裹原来的类,包裹的方式一般是通过在将原来的对象作为修饰类的构造函数的参数。装饰类实现新的功能,但是,在不需要用到新功能的地方,它可以直接调用原来的类中的方法。修饰类必须和原来的类有相同的接口。
修饰模式是类继承的另外一种选择。类继承在编译时候增加行为,而装饰模式是在运行时增加行为。
当有几个相互独立的功能需要扩充时,这个区别就变得很重要。在有些面向对象的编程语言中,类不能在运行时被创建,通常在设计的时候也不能预测到有哪几种功能组合。这就意味着要为每一种 ...
1 定义:
观察者模式(有时又被称为发布/订阅模式)是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来 ...
1 概念
策略模式(Strategy):它定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法的变化不会影响到使用算法的客户。(原文:The Strategy Pattern defines a family of algorithms,encapsulates each one,and makes them interchangeable. Strategy lets the algorithm vary independently from clients that use it.)
2 策略模式的结构
封装类:也叫上下文,对策略进行二次封装, ...
一提到log,相信很多人就知道我要写些什么东西了,在所有的项目中都有自己一套写日志的模块。下面呢,我就根据平时的项目的需求写了一个比较简单使用的logger,方便输出各种等级的log。
事先声明一下,代码仅供大家学习参考之用,有什么不足的地方还请大家提出来。在实际使用中可以考虑把log放入一个list,然后用一个线程专门负责写log.
下面logger的结构,有需要的源代码的,索取一下密码,谢谢!
class Logger
{
public:
static void InitLoggerConfig(void);
static void ...
转自:http://blog.sina.com.cn/s/blog_4b650d650100pufd.html
http://359611946.blog.163.com/blog/static/11619002011413102539518/
http://www.delnabla.cn/article.asp?id=205
http://hi.baidu.com/hpagent/blog/item/d069bcd6a4a15713a18bb789.html
工作需要,被迫看了一段老外编写的C++代码,开始被老外绕了一通,最后找到了原因.老外真是牲口,妈的啥技巧都用,查了一 ...
转自http://book.51cto.com/art/200902/109024.htm
http://hi.baidu.com/zzzkkk666/blog/item/683ac15472d29e5cd10906dd.html
5.4.1. 变长参数的使用
5.4 函数的变长参数
文件的格式化输入输出函数都支持变长参数。定义时,变长参数列表通过省略号"…"表示,因此,具有变长参数列表的函数定义格式为:
type 函数名(参数1, 参数2, 参数n, ...);
其中type为函数的返回值类型,参数1~参数n为定长参数,"...&quo ...
From:http://www.cplusplus.com/reference/std/limits/numeric_limits/
numeric_limits
浮点数据精度判断
float x=0.0;
float y=0.0f;
if ( abs(x -y) <= numeric_limits<float>::epsilon() )
{
...
}
class template
<limits>
Numeric limits type
This class is specialized for ...
转自:http://www.cppblog.com/lovedday/archive/2007/09/24/32801.html
offsetof宏解析
今天看代码时,发现一个有用的东东,offsetof(s,m),这是一个宏,MSDN文档的说明如下:
Retrieves the offset of a member from the beginning of its parent structure.size_t offsetof(structName,memberName );
ParametersstructName Name of the parent data stru ...
[C++] #pragma 预处理指令详解 转载
- 博客分类:
- C++
转自:http://www.cnblogs.com/cdo/archive/2005/06/08/170442.html
pragma指令简介
在编写程序的时候,我们经常要用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作.下面介绍了一下该指令的一些常用参数,希望对大家有所帮助!
一. message 参数。
message 它能够在编译信息输出窗 口中输出相应的信息,这对于源代码信息的控制是非常重要的。其使用方法为:
#pragma message(“消息文本”)
当编译器遇到这条指令时就在编译输出窗口中将消息文本打印出来。 当我们在程序中定义 ...
[C++] C/C++位结构(位域)[转]
- 博客分类:
- C++
转自:http://hi.baidu.com/liudeandg/blog/item/121633ddd2bf71265882dd20.html
位域 : 有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几 个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这样就可以把几个不同的对象用一个字节的二进制位域来表示。一、位域的定义和位域变 ...