现在位置: 首页 > 所有2012年发表的文章
2012-08-17 11:42 工业·编程 ⁄ 共 3322字 暂无评论
    自从发了5篇关于消息的文章(深度解析VC中的消息(下) ),有的网友来信希望我讲一些比较实用的消息机制用法,这里我想就用户的自定义消息做一个全面的论述,希望能够解除你心头的困惑。      一、普通的自定义消息方法     根据我在前面的几篇文章中提到的消息值的范围,我向大家都很清楚用户自定义消息的范围,不过,虽然说用会自定义消息从WM_USER开始,但是由于我...
阅读全文
虚函数的开销     人们一提到虚函数,首先想到的是多态,紧接着想到的就是开销(至少我开始的时候就是这样子的),那么虚函数的开销来自哪里?开销究竟有多大?     在理论上来讲,虚函数所带来的动态开销主要依赖于3个方面:编译器、操作系统和机器。但是在现实中,几乎所有的编译器都以同样的方式操作。调用一个虚函数的开销主要来自于2个方面,一个是如果虚函数不是内联的,就要增加一些额...
阅读全文
    C++是一个恶草丛生的地带,虚拟机制是很重要,但是很危险的一个C++特性,所以有必要对此作一下阐述,希望能对大家有所帮助。 什么是虚函数     简单地说,就是在成员函数前加关键字virtual,这样这个成员函数就变成了虚函数。虚函数的思想是从Simula借来得,在C++里面算得上最显著的特征。      虚函数允许派生类取代基类所提供的实现。编译器确保当对象为派生类时,派...
阅读全文
2012-08-17 11:28 工业·编程 ⁄ 共 955字 暂无评论
    虚函数里面有一个很特殊的东东,那就是纯虚函数,关于纯虚函数的问题也是新人们常见的话题,这里我想对此作一个小小的论述,希望能给初学者一个满意的解释。 一、引入原因    1、为了方便使用多态特性,我们常常需要在基类中定义虚拟函数。    2、在很多情况下,基类本身生成对象是不合情理的。例如,动物作为一个基类可以派生出老虎、孔雀等子类,但动物本身生成对象明显不合常...
阅读全文
2012-08-17 11:08 工业·编程 ⁄ 共 3024字 评论 1 条
    前面,我们分析了消息的基本理论和基本的函数及用法(深度解析VC中的消息(上) 、 深度解析VC中的消息(中)  、深度剖析消息反射机制),接下来,我们将进一步讨论消息传递在MFC中的实现。 MFC消息的处理实现方式     初看MFC中的各种消息,以及在头脑中根深蒂固的C++的影响,我们可能很自然的就会想到利用C++的三大特性之一:虚拟机制来实现消息的传递,但是经过分析,我们看到事情并...
阅读全文
2012-08-17 11:04 工业·编程 ⁄ 共 583字 暂无评论
    有人说:编程高手==游戏高手。如果这是真的话,我早就成高手了,因为在游戏里,我早已成为宇宙总管、富甲天下、仗剑走天涯了。可是我还是一个菜鸟:)闲来无事,随便贴点文章。     程序员不应依赖开发工具,程序员更应该拥有的是一种思维、一种精神、一种观念。就像Richard.M.Stallman一样,有自己的精神,为自由软件而奋斗。就像求伯君,为民族软件的振兴而奋斗。这才是真正的程序员。 ...
阅读全文
2012-08-17 10:40 工业·编程 ⁄ 共 2829字 暂无评论
说到宏,恐怕大家都能说出点东西来:一种预处理,没有分号(真的吗?)。然后呢? 嗯.......茫然中...... 好吧,我们就从这开始说起。 最常见的宏恐怕是#include了,其次就是#define还有....... 还是从宏的用途分类吧: 1、#include 主要用于包含引用文件,至今其地位无人能替代; 2、注释掉代码。例如:    #if 0    .......    #endif;    这种机制是目前注释...
阅读全文
2012-08-17 10:39 工业·编程 ⁄ 共 9854字 暂无评论
1、什么是const?    常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。(当然,我们可以偷梁换柱进行更新:) 2、为什么引入const? const 推出的初始目的,正是为了取代预编译指令,消除它的缺点,同时继承它的优点。 3、cons有什么主要的作用?    (1)可以定义const常量,具有不可变性。         例如:   ...
阅读全文
2012-08-17 10:37 工业·编程 ⁄ 共 1957字 暂无评论
    记得第一次听说电脑,大约是在高一的时候,当时学校新进了一批586,当时觉得好的不得了,还专门请了老师来给我们上课。第一次就是讲什么计算机的历史,大概是因为有领导在场,老师讲的很呆板。第二节课,没有了领导的旁听,老师开始大刀阔斧的神侃,谈到黑客的历史,程序语言的演化。当时觉得天底下最厉害的就要数黑客了,于是我一直就把黑客当作心目中的偶像。可惜的是,我们就上了这两节课,以后学校已抓...
阅读全文
2012-08-17 10:36 工业·编程 ⁄ 共 1743字 暂无评论
    语言的发展是一个逐步地进的过程,C++是直接从C语言发展过来的,而C语言是从B语言发展过来的,B语言是BCPL的一个解释性后代,BCPL是Basic CPL。其中最有趣的是CPL中C的由来,由于当时这个语言是剑桥大学和伦敦大学合作开发的,在伦敦的人员加入之前,C表示剑桥,伦敦人员加入之后,C表示Combined组合。还有一种非正式的说法,C表示Christopher,因为Christopher是CPL背后的主要动力。     最...
阅读全文