摘要:1 Windows窗口消息大全,全不全自己看 2 3 ////////////////////////////////////////////////////////////////////////// 4 #include "AFXPRIV.H"//消息值的定义来源 5 #include "Dde.h"//DDE消息值的定义来源 6 #include "CPL.H"//控制面板消息值的定义来源 7 #include "WFEXT.H"//文件管理器的消息值的定义来源 8 #include "vfw.h&
阅读全文
摘要:接口是一个没有被实现的特殊的类,它是一系列操作的集合,我们可以把它看作是与其他对象通讯的协议。C++中没有提供类似interface这样的关键 字来定义接口,但是Mircrosoft c++中提供了__declspec(novtable)来修饰一个类,来表示该类没有虚函数表,也就是虚函数都是纯虚的。所以利用它我们依然可以定义一 个接口。代码例子如下:#include<IOSTREAM>usingnamespacestd;#defineinterface class __declspec(novtable)interfaceICodec{public:virtualboolDecod
阅读全文
摘要:http://blog.csdn.net/walkerlan/article/details/3167877(1)V TA B L E(虚函数表)和VPTR(指向虚函数标的指针)的区别编译器到底做了什么实现的虚函数的晚绑定呢?我们来探个究竟。编译器对每个包含虚函数的类创建一个表(称为V TA B L E)。在V TA B L E中,编译器放置特定类的虚函数地址。在每个带有虚函数的类中,编译器秘密地置一指针,称为v p o i n t e r(缩写为V P T R),指向这个对象的V TA B L E。通过基类指针做虚函数调用时(也就是做多态调用时),编译器静态地插入取得这个V P T R,并在
阅读全文
摘要:错误回放:A problem occurred while installing selected Windows SDK components.Installation of the "Microsoft Windows SDK for Windows 7 Compilers for x86" product has reported the following error: 安装时发生严重错误Please attempt to resolve the problem and then start Windows SDK setup again. If you conti
阅读全文
摘要:解决[error MSB6006: “cmd.exe” 已退出,代码为 9009。]问题:The AppWizard for VS2010 above has two small glitches (however they might deter people from using WTL with VS2010). These are very easy to fix:1) [Output Directory] and [Intermediate Directory] in new project properties are not followed by a backslash (
阅读全文
摘要:转自:http://www.cnblogs.com/glshader/archive/2010/08/27/1809846.html在windows环境下, 可以使用_access_s, _waccess_s这两个函数来判断文件是否存在.前一个函数是anci版本, 后一个是unicode版本.这两个函数声明在io.h中.1if(_access_s(filepath, 0) == 0)2{3 // 文件存在4}函数还可以判断文件的模式: 读/写.具体参见msdn
阅读全文
摘要:const char*, char const*, char*const的区别问题几乎是C++面试中每次都会有的题目。事实上这个概念谁都有只是三种声明方式非常相似很容易记混。Bjarne在他的The C++ Programming Language里面给出过一个助记的方法:把一个声明从右向左读。char * const cp; ( * 读成 pointer to )cp is a const pointer to charconst char * p;p is a pointer to const char;char const * p;同上因为C++里面没有const*的运算符,所以cons
阅读全文
摘要:原因:char *p="hello“;*(p+2)='w';这里的p是一个指向常量字符串的指针他可以相当与:const char *p="hello"根据定义:指向常量字符串的指针不能更改指针指向的内容,但是可以改变本身的值,既是执行*(p+2)='w'; (错误) p="bcvcbvv"(正确)char pp[] = "hello";这个相当与指针常量,就是本身是个常量因为pp就是数组的一个引用,引用本身就是指针常量相当与 char const *pp="hello";根据定义:指针常量不能改变本身的值,但是可以改变指向的值既是 *(pp+2)='W'(准确) pp="mnbmbmb"(
阅读全文
摘要:1. 首先我们来看HeapAlloc:MSDN上的解释为:HeapALloc是从堆上分配一块内存,且分配的内存是不可移动的(即如果没有连续的空间能满足分配的大小,程序不能将其他零散的 空间利用起来,从而导致分配失败),该分配方法是从一指定地址开始分配,而不像GloabalAlloc是从全局堆上分配,这个有可能是全局,也有可能是 局部。函数原型为:LPVOIDHeapAlloc(HANDLE hHeap, DWORD dwFlags, SIZE_T dwBytes);hHeap是进程堆内存开始位置。dwFlags是分配堆内存的标志。包括HEAP_ZERO_MEMORY,即使分配的空间清零。dwB
阅读全文
摘要:OpenMP 简易教程 点击下载:http://u.115.com/file/f7ccad094
阅读全文
摘要:转自:http://www.cnblogs.com/jfei1982/articles/891716.html一楼回复.其实,这个问题的主要原因是CPU内部的指令执行机制。现在,基本上CPU内部都有分支指令预测,就是当执行(现在大多将这一阶段提前到预取指令时执行)到转移指令时,都会直接从分支目标缓存(BTB)中取出目标指令的地址,然后将要执行的指令提前预取到CPU的指令预取指令队列中。这样,显然大...
阅读全文
摘要:如果头文件多次被include 则全局变量的定义不能写在这个头文件中 建议写在一个Cpp文件中, 然后要用时, 加 extern 头, 再声明一下下就可以用了 如 在.Cpp中 int iABC; 在.h中在写一遍 extern int iABC;
阅读全文
摘要:方法很简单,只需要在监视中添加"$err,hr"即可.
阅读全文
摘要:VS2010 正式版终于退出了.安装过程中却不给我们填写序列号的机会,于是小"研究"了一下,找到了替换默认Key的方法,这样以后安装就不用再进入恢复模式修改key了.在"[X]:\Setup\setup.sdb"文件中搜索"[Product Key]"字段,将默认值修改为"YCFHQ9DWCYDKV88T2TMHG7BHP"即可,以后安装VS2010,一装完就是正式版!
阅读全文
摘要:CString::Tokenize()和AfxExtractSubString()这两个函数都用来截取特定分隔符的字符串,其中有些区别值得注意。CStringT Tokenize(PCXSTR pszTokens, int& iStart) const;BOOL AFXAPI AfxExtractSubString(CString& rString, LPCTSTR lpszFul...
阅读全文
摘要:IDR_MAINFRAME字符串资源中包含7个子串,分别以\n结束,即如下格式:<windowTitle>\n<docName>\n<fileNewName>\n<filterName>\n<filterExt>\n<regFileTypeId>\n<regFileTypeName>\n(1)CDocTemplat...
阅读全文
摘要:http://hi.baidu.com/yuguo138/blog/item/351ab86e9fca0dda81cb4ab9.html[代码]
阅读全文
摘要:资源分配函数清除函数需要手动清除? ====================================================================== AcceleratorsLoadAcceleratorsN/A No AtomsGlobalAddAtomGlobalFreeAtomYes BitmapsCreateBitmapDeleteObjectYe...
阅读全文
摘要:简介 线程之间通信的两个基本问题是互斥和同步。 线程同步是指线程之间所具有的一种制约关系,一个线程的执行依赖另一个线程的消息,当它没有得到另一个线程的消息时应等待,直到消息到达时才被唤醒。 线程互斥是指对于共享的操作系统资源(指的是广义的"资源",而不是Windows的.res文件,譬如全局变量就是一种共享资源),在各线程访问时的排它性。当有若干个线程都要使用某一共享资源时,任何时刻最多只允...
阅读全文
摘要:用途一: 定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如: char* pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, // 和一个字符变量; 以下则可行: typedef char* PCHAR; // 一般用大写 PCHAR pa, pb; // 可行,同时声明了两个指向字符变量的指针 虽然: char *pa, *pb...
阅读全文