第10、11周-程序阅读补充(1)
2016-05-17 14:42
190 查看
问题及代码:
运行结果:
知识点总结:
派生类构造函数的执行顺序是先执行所有基类的构造函数(顺序按照定义派生类时指定的各基类顺序),再执行派生类的构造函数,析构函数执行顺序,与构造函数完全相反(因为,数据是按栈存储的)。
/*Copyright (c)2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作 者:王艺霖 *完成日期:2016年5月17日 *版 本 号:v1.0 *问题描述:阅读程序 *输入描述: *输出描述: */ #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; }
运行结果:
知识点总结:
派生类构造函数的执行顺序是先执行所有基类的构造函数(顺序按照定义派生类时指定的各基类顺序),再执行派生类的构造函数,析构函数执行顺序,与构造函数完全相反(因为,数据是按栈存储的)。
相关文章推荐
- php 上传csv文件
- OpenMP常用指令释义
- jQuery扩展方法
- 南阳理工oj_The Triangle
- nginx+nagios使用用户名密码鉴权设置
- spring jdbcTemplate query
- 下拉框combobox用法&级联餐单
- PHP中的11个魔术方法总结:__construct,、__destruct、__call等
- OC关联objc_setAssociatedObject
- LeetCode-263&264.Ugly Number
- 获取数组的最小值
- RabbitMQ在分布式系统的应用
- 架构漫谈(七):不要空设架构师这个职位,给他实权
- 有关ios硬件的部分的
- 122. Best Time to Buy and Sell Stock II
- Pascal's Triangle II
- PS结合Magic Morph制作一张趣味的动态图
- 决策树二
- 基于Bootstrap3表格插件和分页插件实例详解
- UVALive 6277 - Addictive Bubbles (模拟)