摘要:1、基类的析构函数声明为virtual的好处? 假设基类CBase,其派生类CChild,有如下代码: CBase *pBase=new CChild; //new CChild构造对象时,先调用基类CBase的构造函数,然后调用CChild的构造函数,析构时顺序应该恰好相反。 delete pBase; 如果CBase的析构函数定义为virtual,那么pBase指针被撤销时,就会先调用CChild的析构函数,然后调用CBase的析构函数。 而如果CBase的析构函数不是virtual,那么只会调用CBase'的析构函数,从而导致内存泄漏。2、构造函数为什么不可以声明为virtual 阅读全文
类String的构造函数、析构函数和赋值函数
2012-08-22 09:52 by javaspring, 441 阅读, 0 推荐, 收藏, 编辑
摘要:1、代码如下: 注意:形参加上const修饰符,函数体里面判断参数是否为NULL,引用不能为空等。 复制操作符应该判断是否是自赋值。 重载输入操作符时,要注意给data分配足够的空间,现在还没有想到太好的办法,用的是临时变量,这里一直不是很明白C++中的(string s; cin>>s;)到底最大可以读取多少个字符,其原理又是怎么实现的呢。 友元函数有时候编译器会有bug,解决方法如下:事先声明类和友元函数(在类外面不能用friend 关键字) class String; ostream& operator<<(ostream& out,const S 阅读全文
lucene3.5以上版本jar包模块的用处(分词+分组+高亮+搜索提示)
2012-08-22 09:40 by javaspring, 226 阅读, 0 推荐, 收藏, 编辑
摘要:lucene3.5以上版本jar包模块的用处(分词+分组+高亮+搜索提示)免费的源码demo http://download.csdn.net/detail/yjflinchong/4291818analyzers : 各种分词器 以国家、语言、功能进行分类http://download.csdn.net/detail/yjflinchong/4291723http://download.csdn.net/detail/yjflinchong/4291717grouping : 分组统计 ,可以对各Field进行几个级别的搜索结果中field值的统计 http://download.csdn. 阅读全文
句柄
2012-08-21 21:55 by javaspring, 462 阅读, 0 推荐, 收藏, 编辑
摘要:1、句柄概念 句柄,是整个windows编程的基础。一个句柄是指使用的一个唯一的整数值,即一个四字节长的数值,来标示应用程序中的不同对象和同类对象中的不同的实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等。应用程序能够通过句柄访问相应的对象的信息,但是句柄不是一个指针,程序不能利用句柄来直接阅读文件中的信息。如果句柄不用在I/O文件中,它是毫无用处的。 句柄是windows用来标志应用程序中建立的或是使用的唯一整数,windows使用了大量的句柄来标志很多对象。 WINDOWS程序中并不是用物理地址来标识一个内存块,文件,任务或动态装入模块的。相反,WINDOWS API给这 阅读全文
unix网络编程各种TCP客户-服务器程序设计实例(二)
2012-08-21 21:42 by javaspring, 266 阅读, 0 推荐, 收藏, 编辑
摘要:前面我们介绍了unix网络编程各种TCP客户-服务器程序设计实例附环境搭建和编译方法本节我们接着介绍另外的几种TCP客户-服务器程序;第四种:TCP并发服务器,每个客户一个子线程在我们前面的并发服务器程序例子中可以看出:父进程接受连接,派生子进程,子进程处理与客户的交互。这种模式的问题:fork()是昂贵的。内存映像要从父进程拷贝到子进程,所有描述字要在子进程中复制等等。fork()子进程后,需要用进程间通信在父子进程之间传递信息。一个进程中的所有线程共享相同的全局内存,这使得线程很容易共享信息,但是这种简易型也带来了同步问题。一个进程中的所有线程不仅共享全局变量,而且共享:进程指令,大多数数 阅读全文
3G手机Android应用开发视频教程_黎活明老师的视频(第四天课程)总共有八天课程
2012-08-21 21:11 by javaspring, 123 阅读, 0 推荐, 收藏, 编辑
摘要:下载地址:http://jiyanet.com/read.php?tid=403 阅读全文
3G手机Android应用开发视频教程_黎活明老师的视频(第三天课程)总共有八天课程
2012-08-21 21:10 by javaspring, 179 阅读, 0 推荐, 收藏, 编辑
摘要:下载地址:http://jiyanet.com/read.php?tid=402 阅读全文
POJ 1523 SPF 无向图求割点和块
2012-08-21 20:59 by javaspring, 299 阅读, 0 推荐, 收藏, 编辑
摘要:来源:http://poj.org/problem?id=1523题意:给一个无向图,求该无向图中的割点和该割点属于块的数量。一个割点是可以属于多个块的。思路:深搜,dfs解决。给出一些无向图中关于割点割边的知识,是从网上找的。一、基本概念无向图割点:删掉它之后(删掉所有跟它相连的边),图必然会分裂成两个或两个以上的子图。块:没有割点的连通子图割边:删掉一条边后,图必然会分裂成两个或两个以上的子图,又称桥。缩点:把没有割边的连通子图缩为一个点,此时满足任意两点间都有两条路径相互可达。求块跟求缩点非常相似,很容易搞混,但本质上完全不同。割点可以存在多个块中(假如存在k个块中),最终该点与其他点形 阅读全文
Java RandomAccessFile的使用
2012-08-21 16:15 by javaspring, 215 阅读, 0 推荐, 收藏, 编辑
摘要:Java的RandomAccessFile提供对文件的读写功能,与普通的输入输出流不一样的是RamdomAccessFile可以任意的访问文件的任何地方。这就是“Random”的意义所在。RandomAccessFile的对象包含一个记录指针,用于标识当前流的读写位置,这个位置可以向前移动,也可以向后移动。RandomAccessFile包含两个方法来操作文件记录指针。long getFilePoint():记录文件指针的当前位置。void seek(long pos):将文件记录指针定位到pos位置。RandomAccessFile包含InputStream的三个read方法,也包含Outp 阅读全文
Java虚拟机读写其他进程的数据
2012-08-21 15:30 by javaspring, 216 阅读, 0 推荐, 收藏, 编辑
摘要:使用Runtime对象的exec()方法可以获得其他进程的Process对象,Process对象代表由该Java程序启动的子进程,Process类提供了如下3个方法,用于让程序和其子进程进行通讯。InputStream getErrorStream():获取子进程的错误流InputStream getInputStream():获取子进程的输入流OutputStream getOutputStream():获取子进程的输出流下面的代码实现了获取子进程的错误输出import java.io.BufferedReader;import java.io.InputStreamReader;publi 阅读全文