大一第二学期第11周【程序阅读(2)】
2015-05-30 17:29
246 查看
代码:
#include<iostream> using namespace std; class G { public: static int m; G( ) //构造函数 { m++; cout<<"G begins\n"; } ~G( ) { cout<<"G ends\n"; m--; } }; int G::m=0; class D:public G { public: D( ) //构造函数 { m++; cout<<"D begins\n"; } ~D( ) { cout<<"D ends\n" ; m-- ; } }; int main( ) { D objg; cout<<G::m<<endl; return 0; }
运行结果:
预期结果:G begins
D begins
2
D ends
G ends
实际结果:G begins
D begins
2
D ends
G ends
学习体会:
我更进一步的知道了基类与派生类函数的执行顺序,还知道了++n与n++的区别,其分别为++n输出n加1之后的n,但是n++输出原来的n,但返回的n的参数是n加1之后的值。一般首选++n,因为前置++在原来的基础上进行操作,效率高,但是后置++,重新分配空间,既占空间,又消耗时间,所以效率低。自我勉励:
I am the best!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!相关文章推荐
- 设计模式——备忘录模式
- 【Maximum Subarray 】cpp
- iOS 修改backBarButtonItem 中的titile 字段
- Python爬虫爬取贴吧的帖子内容
- 腾讯Bugly参展北京2015QCon大会
- 大一第二学期第11周【程序阅读(1)】
- C# WinForm下DataGridView导出Excel的实现
- 串口流控制(flow control)
- 大一第二学期第8周【程序阅读(2)】
- hibernate 延迟加载
- Kronos获取自定义信息
- 这些年
- Linux批量部署无密钥脚本
- (scala实现) 在1到9(顺序不能变)之间插入+或-或什么都不插入,使得计算结果总是100
- 大一第二学期第8周【程序阅读(4)】
- C语言编程优化运行速度
- [整理] AndroidManifest.xml 标签
- webkit内核浏览器是否支持history.pushState
- 利用栈求二叉树中两节点的最近共同祖先(无父节点指针)
- 简谱音名对照表