- 博客(5)
- 收藏
- 关注
原创 MFC仿真之Mesage Map
MFC中与消息相关的类是CCmdTarget,派生自它的类都是"消息标志类",每个"消息标志类"都需要一个消息映射表(AFX_MSGMAP),并将基类与派生类的消息映射表串连起来。//消息映射表struct AFX_MSGMAP { AFX_MSGMAP *pBaseMessageMap; //父类的消息映射表 AFX_MSGMAP_ENTRY *lpEntrys; //消息数组};
2012-09-18 11:05:07 1037
原创 MFC仿真之RTTI
最近看>很带感,这是看书的一些笔记。RTTI(运行时类型识别),就是在构建类的时候将类的信息记录下来,并将这些信息用链表连接起来形成一张类别型录网,RTTI可以实现IsKindOf, 动态创建等技术。MFC.h#define BOOL int#define TRUE 1#define FALSE 0#define LPCSTR LPSTRtypedef char*
2012-09-17 20:59:58 388
原创 用find_if查找容器中符合条件的子集
比如我有一个结构体:Struct DATA{ int order; //序号 int type; //类型 double dValue; //值 time_t time; //时间};现在我有一个容器,里面有N个DATA结构:Vector vData;需求:从结
2012-09-17 20:42:05 879
原创 关于头文件的依赖
随意的在头文件中包含其它头文件容易产生循环依赖。如果一个头文件需要包含其它头文件才能工作的话,就会增加交流障碍,给头文件的用户增添不必要的负担。头文件中如果能用前向声明解决,那么就不要包含定义。头文件互相依赖有碍于模块性,是大型项目的祸根。注意:当两个类在不同的命名空间,但是又需要互相依赖的情况下,可以这样写: //file1.hnamespace nameSpace1
2012-09-17 20:34:29 1421
原创 断言assert
断言的强大怎么高估都不过分。可以把assert 看成一个在任何系统状态下都可以安全使用的无害测试手段。在MFC中为ASSERT宏。 用法: assert (表达式); assert会检查表达式的结果,如果表达式不成立会中止程序弹出一个对话框,提示断言错误的位置,点击重试按钮会进入程序中断言的位置。断言一般只会在调试模式下生成代码(在NDEBUG宏没有被定义时),在发行版本中它们是不
2012-09-17 20:28:40 994
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人