月归档:2006 年十二月

C++数据结构学习:二叉树(4)
HOT

才刚开了个头,就要说再见了——在树这里,除了二叉树,别的都还没有讲。为什么可以总结了呢?因为前面已经涉及到了树的两个基本用途,而如果再讲B+、B-,就不能不提到搜索,如果是胜者树就不能不提到排序。为此,把这部分放到后面。我前面所做的努力,只是让你有个基本概念,什么时候记得用树。  树的两个基本用途,可以用物质和精神来比喻。    一个用途是做为数据储存,储存具有树结构的数据——目录、族谱等等。为了...
阅读全文

C++数据结构学习:事件驱动模拟
HOT

我看的两本教科书(《数据结构(C语言版)》还有这本黄皮书)都是以这个讲解队列应用的,而且都是银行营业模拟(太没新意了)。细比较,这两本书模拟的银行营业的方式还是不同的。1997版的《数据结构(C语言版)》的银行还是老式的营业模式(毕竟是1997年的事了),现在的很多地方还是这种营业模式——几个窗口同时排队。  这种方式其实不太合理,经常会出现先来的还没有后来的先办理业务(常常前面一个人磨磨蹭蹭,别...
阅读全文

C++数据结构学习:在链表中链入对象
HOT

似乎你也注意到了,不管怎么定义,好像一个链表中的对象都是同一类型的。而实际上,这也是必须的,否则,返回节点中的数据这样的函数的返回值的类型是什么呢?但是,人的要求是无止境的……(省略本人感慨若干百字)。把不同的对象链在一个链表中的目的是为了方便使用,现在一定记住这个原则,后面的讨论都是基于这个原则的,否则,我们就是技术狂人了——偏偏实现一些看起来不可能的事情。  达到这个目标的原理其实很简单,只要...
阅读全文

数据结构学习(C++)——线性链式结构总结
HOT

 在开始写这些文章之前,我曾经有个想法,能不能以单链表为基础,完成所有的线性链式结构?实践证明,是可以的,就像你看到的这样。我做这个尝试的起因是,看不惯现在教科书凌乱的结构:罗列了一大堆ADT或者是templat class,好像这些都要你去记似的。殊不知,只有提取共性,突出个性,才能更明显的表现出各种数据结构的差异,显示数据结构的进化发展的过程,看出变化的内在需求。借用《C++沉思录》...
阅读全文

请问外部变量和内部变量是什么意思?
HOT

感到好抽象,外部,内部指的是哪里?是对于储存器来说的,还是程序。 ------- 看那C语言部懂的概念这是由于程序分块编译造成的。对于大型程序来说,一般有很多个小程序,每个小程序都是一个独立的编译单元。由于每个程序不可避免地要引用其它程序的变量,所以在编译时,要暂时不分配地址,而编译单元中的变量可以直接分配地址。这种编译上的不同,造成外部变量和内部变量上的差异。外部变量的地址定位要等到连接时才能完...
阅读全文

一个排序用的C++函数模板
HOT

前段时间编写MFC程序时,需要对一个字符串集合CStringArray进行排序。标准模板库STL提供的函数模板sort虽然功能强大,但有两个不便:1、 sort使用枚举器(iterator)机制处理C++数组(即指针)和诸如vector这样的STL对象,但MFC集合类CArray、CStringArray没有提供枚举器。虽然可以通过集合类的成员函数GetData把集合转换成指针,然后调用sort进...
阅读全文

用VC++设计语法编辑器
HOT

语法编辑器是一个可以对java/j2me/code/' target='_blank'>程序设计语言进行语法编辑的文本编辑器,它对程序设计语言进行语法关键字进行加亮处理,如注释行、字符串、语法关键字、数字等,这样使得源程序更容易阅读,VB、VC++、DELPHI等开发环境都提供了语法编辑功能,相信开发人员都会有切身的体会。本文将讲述如何用VC++设计一个语法编辑器,因为源程序较长,本文并不打...
阅读全文

虚函数实现的消息驱动的类
HOT

以下是我用虚函数实现的消息驱动的类。可以实现由一个对象发出消息,引起其它的符合条件的对象的相应操作。条件是所有对象必须是由相同的事件驱动类(注意模板的参数)及其派生类所生成的。很简单,很有趣,大家不妨一试。------------------------------------------------------------------------------------------////头文件...
阅读全文

构造函数中的this指针
HOT

说明:感谢网页C++ FAQ Lite的作者Marshall Cline和译者申旻;感谢《C++语言核心》一书的作者Gregory Satir和Doug Brown及译者张铭泽-------------------------------原理-------------------------------某些人认为不应该在构造函数中使用this指针,因为这时this对象还没有完全形成。但是,只要小心...
阅读全文

用VC实现远程修改NT帐号
HOT

如果我们在Windows NT Server 4.0上建立一个独立的邮件服务器,那么邮件服务器的用户同时也必须是“从批处理作业登录"权限的NT域用户,因此用户邮件账号密码(亦即NT用户密码)的更改,必须以管理员身份登录到NT才能实现,十分不便。如何才能让普通邮件用户方便自由地更改其账号密码呢?下面,笔者就用VC编写一个CGI程序,来让普通用户通过浏览器访问网页来远程修改自己的个人帐号信息。 调用C...
阅读全文

用简单的命令检查电脑是否被安装木马
HOT

一些基本的命令往往可以在保护网络安全上起到很大的作用,下面几条命令的作用就非常突出。   检测网络连接   如果你怀疑自己的计算机上被别人安装了木马,或者是中了病毒,但是手里没有完善的工具来检测是不是真有这样的事情发生,那可以使用Windows自带的网络命令来看看谁在连接你的计算机。具体的命令格式是:netstat -an这个命令能看到所有和本地计算机建立连接的IP,它包含四个部分——proto(...
阅读全文
5 页 / 共 7