摘要:
在windows中,进程唯一性通常通过内核对象方式来实现,如Mutex之类的内核对象。这种方式之所以可行,是以两个进程创建间隔时间超过了CreateMutex执行时间,当然大部分情况下,这个条件是成立的,既然是条件,当然也存在不成立的情况,那怎么才能够在控制单个进程的时候创建多个进程对象呢? 阅读全文
随笔分类 - C/VC/MFC
三种自定义消息数值范围
2008-04-20 13:20 by ubunoon, 385 阅读, 收藏,
摘要:
在CSDN上看到一贴关于自定义消息的讨论: 【http://topic.csdn.net/u/20080417/11/9e091cfe-3978-4b73-a1bd-ff5e7d508917.html】第一种楼主的方法是通过WM_USER自定义消息,这个方法,比较常用,也是容易知道的。楼主的5个步骤: 1.#definewm_user_messagewm_user+int(shift)语句后不能加";"号; 2.上述shift为1~1000以内的整数值; 3.该值的选择与系统消息,窗口消息,控件消息等无关; 4.消息映射必须在BEGIN_MESSAGE_MAPS()和END 阅读全文
Bridge模式
2008-04-20 10:07 by ubunoon, 201 阅读, 收藏,
摘要:
Bridge模式可以更方便的扩展,实现了类的实现与定义的完全分离。实现方式为:通过定义两个类,一个类来定义功能,另一个类来实现功能,实现功能的类的对象以参数形式赋给定义功能的类,从而实现信息相互配合使用。本想在此处插入Bridge模式的UML图示,插入太麻烦,过几天修改插入!下面是Bridge模式的一个实现例子: /// 抽象类定义//window.h:interfaceforthewindowclass.///**///////////////////////////////////////////////////////////////////////#if!defined(AFX_WIN 阅读全文
CppUnit单元测试使用方法
2008-04-11 22:21 by ubunoon, 241 阅读, 收藏,
摘要:
使用CppUnit编写unit测试 编写unit测试,需要连接cppunitXX.lib,XX依据配置选择后缀字母。CppUnit包含的路径必须在include搜索的路径中 可以通过下面方式添加 Project Settings/C++/Preprocessor/Additional include directories或 Tools/Options/Directories/Include.快速步骤: - 连接 lib/cpunitXX.lib - inlucde/ 必须包含在include搜索路径中使用TestRunner GUI: 使用test runner GUI需要连接testrun 阅读全文
Thinking In C++笔记(一)
2008-04-09 17:23 by ubunoon, 212 阅读, 收藏,
摘要:
Ifyoudon'tknowwhatexceptionsmightoccur,don'tuseexceptionspecification. Exceptionspecificationaremainlyfornon-templateclasses.Duetoyoudon'tknowwhatwilloccurwhentemplateclassconstructorthrowanexception,youprogramwouldterminate. Itisbettertoseperatetwoactionsintotowseperatememberfunction,wh 阅读全文
Effictive C++中的一些笔记总结
2007-12-26 12:44 by ubunoon, 553 阅读, 收藏,
摘要:
Effictive C++中的一些笔记总结:地址http://blog.csdn.net/ppcat_001/archive/2007/12/06/1920914.aspx 阅读全文
[转]VC中常用文件功能函数收集
2007-12-26 10:30 by ubunoon, 170 阅读, 收藏,
摘要:
获取当前路径voidGetCurrentDir(char*pPathName)......{charPathName[MAX_PATH];char*p=NULL;GetModuleFileName(NULL,PathName,MAX_PATH);//(strrchr(filename,''))[1]=0;p=strrch(PathName,'');//filename[strlen(filename)-1]=0;strncpy(pPathName,PathName,p-PathName);pPathName[p-PathName]=0;return;} 阅读全文
获取鼠标点窗口句柄
2007-08-02 11:44 by ubunoon, 407 阅读, 收藏,
摘要:
/* The GetCursorPos function retrieves the cursor's position, in screen coordinates. */ BOOL GetCursorPos( LPPOINT &point); /* The WindowFromPoint function retrieves a handle to the window that contains the specified point. */ HWND WindowFromPoint( POINT point );/*The GetWindow function retr 阅读全文
一个身份证号码转换程序
2007-07-16 12:55 by ubunoon, 329 阅读, 收藏,
摘要:
/**//**身份证号码结构:*十七位数字本体+一位校验码*从左到右依次为:*六位数地址码+八位数出身日期+三位数顺序码和一位校验码*地址码:由出生地区行政码划分*年出生日期码:年月日,之间不用分隔符*顺序码:同年同月同日生,男为奇数,女为偶数*校验码:(1)十七位数字本体码加权求和公式*s=sum(ai*wi),i=0,...,16*ai:第i位置上的身份证号码数字值*wi:第i位置上的加权因子*wi:7910584216379105842*(2)求模*Y=mod(s,11)*(3)通过模得到对应的校验码*Y:012345678910*校验码:10X98765432*//**//////// 阅读全文
C++支持的多态方式
2007-06-08 06:31 by ubunoon, 246 阅读, 收藏,
摘要:
1、通过一个隐式转换,从派生类指针或引用转换到其公有基类的指针或引用。 Query *pquery = new NameQuery("Glass");2、通过虚拟函数机制: pquery-eval();3、通过dynamic_cast和typeid操作符 if( NameQuery *pnq = dynamic_cast <NameQuery *>(pquery)) ....在MFC中,通过某个基类的调用,通过定义基类对象,或者直接调用函数(通过this指针)来实现多态的性质。如OnMsgCmd函数,当调用进入的this指针的更改后,OnMsgCmd的调用主也发 阅读全文
文件内容读取
2007-05-20 08:51 by ubunoon, 175 阅读, 收藏,
摘要:
从文件中读取整个文档的代码fseek( fp,0, SEEK_END); //移动到文件末尾int len =ftell( fp ); //读取文件长度cha*pBuf =new char [len+1];rewind (fp) ; //返回到文件头fread(pBuf,1,len,fp); //从fp中读取1个len长度的字符串到pBUf中去 阅读全文
两个注意点
2007-05-08 23:11 by ubunoon, 169 阅读, 收藏,
摘要:
1、整型数相除存在舍去余数的问题。 1+2+3+.....+ n = (1+n)*n/2如果用整数直接相除显然存在问题。正确解法为:if(n%2 == 0)sum = (1+n)*(n>>2);else sum = ((1+n)>>2)*n;2、两个数相交换第一种方法: a = a + b; b = a - b; b = a - b; 存在溢出第二种方法: a ^ = b; b ^ =a; a ^ = b; 阅读全文
MFC消息处理与SDK消息处理
2007-05-06 16:37 by ubunoon, 268 阅读, 收藏,
摘要:
在MFC类实现中,采用消息映射实现对消息的响应,从而改变了在SDK中的循环结构,使得消息的流转更加隐蔽。在SDK中有分三部分构成:WNDCLASS wnd;wnd.lpfnWndProc = WndProc; // 首先将回调函数设置好SDK循环结构,进行消息循环 while(GetMessage(&msg,NULL,0,0)) { TranslateMessage(&msg); DisptachMessage(&msg); }而在另一处有回调函数的实现:LPRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wPar 阅读全文
AfxGetApp 解剖
2007-05-06 16:35 by ubunoon, 385 阅读, 收藏,
摘要:
MFC中有不少的全局函数,方便在不同对象中获取不同的内容或创建不同的对象。主要全局函数有:AfxWinInit() AfxBeginThread() AfxEndThread() AfxFormatString1() AfxFormatString2()AfxMessageBox()AfxOutPutDebugString()AfxGetApp() AfxGetMainWnd() AfxGetInstance()AfxRegisterClass()这些函数从名称上可见豹斑(功能)。本文是学习深入浅出MFC后的第一个笔记,解析AfxGetApp()函数在AFXWIN.H中是这么定义的: CWin 阅读全文
函数指针的应用
2007-05-06 16:29 by ubunoon, 178 阅读, 收藏,
摘要:
函数指针,说白了就是一个地址。 int (*ff(int))(int*,int);该声明将ff()声明为一个函数,它有一个int型的参数,返回一个指向函数的指针,类型为: int(*)(int *,int);等同于 typedef int (*PF)(int *,int) PF ff(int); extern "C" void f( void (*pfParam)(int) ); ff()是一个C函数,它有一个指向C函数指针的参数 C函数指针与C++函数指针有相同特性的编译器中实现,编译器可能会支持一种语言扩散。 阅读全文
鸡肋还是软肋?
2007-02-15 15:36 by ubunoon, 229 阅读, 收藏,
摘要:
公司终于在今天放假了,感觉很疲惫,心力憔悴的感觉。真的很不再想在这个公司里面继续干下去了,做的是公司里面不受重视的行业,感觉很不爽。 阅读全文
c语言函数库
2004-12-27 14:53 by ubunoon, 199 阅读, 收藏,
摘要:
http://blog.csdn.net/shaohui/archive/2004/11/05/167969.aspx 阅读全文
易语言
2004-12-27 13:00 by ubunoon, 259 阅读, 收藏,
摘要:
是由吴涛开发的一种新的编程语言,支持全中文编程,由于界面跟VB相近,使用起来方便,因而有人戏称之为“傻瓜编程”。有兴趣的朋友可到下面的连接去看看:http://eyuyan.com 阅读全文
浙公网安备 33010602011771号