C++问题讨论
文章平均质量分 69
妍妍
Nerver give up!
展开
-
多重继承下,不同基类指针指向同一子类对象的地址问题——腾讯一笔试题
5.观察下面一段代码: class ClassA { public: virtual ~ ClassA(){}; virtual void FunctionA(){}; }; class ClassB { public: virtual void FunctionB(){}; };原创 2012-11-01 11:44:47 · 742 阅读 · 0 评论 -
i++的几个问题,你注意了吗?
(1)x=x+1,x+=1,x++,哪个效率最高?为什么?x=x+1最低,它的执行过程如下:读取右x的地址;x+1;读取左x的地址;将右值传给左边的x(编译器并不认为左右x的地址相同)。x+=1执行过程如下:读取地址;x+1;将得到的值传给x。x++效率最高,执行过程如下:读取x的地址;x自增1。但是看到这个题目,起初我觉得应该是一样的,难道所有的编译器都如上实现吗?原创 2012-11-01 11:45:29 · 387 阅读 · 0 评论 -
Win7下QT开发环境搭建
首先是软件准备:需要下载两个软件qt-win-opensource-4.4.0-mingw(ftp://ftp.trolltech.com/qt/source/qt-win-opensource-4.4.0-mingw.exe)MinGw(http://www.mculee.cn/upload/MinGW-3.4.2.exe)软件安装过程:先安装MinGW。路径尽量短,任意转载 2012-11-30 09:32:58 · 2555 阅读 · 0 评论 -
动态分配数组和vector效率问题
这个问题不是什么新问题了,以前只知道STL效率不怎么高,但是怎么个情况,从来没有关心过,就知道vector用起来挺方便的。由于最近处理的数据量比较大,所以来了兴致写了一个小程序测试一下,程序如下:clock_t start,finish;//对数组的测试 start=clock(); int *p=new int[10000000]; for(int i=0;i<原创 2012-11-30 09:19:00 · 3290 阅读 · 5 评论 -
异常的总结
(1)在匹配的过程中,不会将一种异常类型自动转换为另一个中异常。class Exception1{};class Exception2{public: Exception2(const Exception1&) {}};void f(){ throw Exception1();}int _tmain(int argc, char* argv[]){ try {原创 2013-01-08 15:16:55 · 405 阅读 · 0 评论 -
未捕获和意外的异常处理
一、未捕获异常: 如果没有任何一个层次的异常处理器能够捕获某种异常,则一个特殊的库函数terminate()(在头文件中定义)会被自动调用。默认情况下terminate()函数调用标准C库函数abort()使程序执行异常终止而退出。 abort()函数不会调用正常的终止函数,全局对象和静态对象的析构函数不会执行。 terminate()函数还会在如下两种情况下执行:原创 2013-01-11 08:57:00 · 1847 阅读 · 0 评论