C++对象生命周期(未完)
2015-08-02 21:56
246 查看
1.栈中生成的对象,其作用域为其在的{}中。遇到右括号}后执行析构函数。
2.堆中生成的对象,即new生成的动态对象,需要delete执行析构函数。
运行结果为:
2.堆中生成的对象,即new生成的动态对象,需要delete执行析构函数。
<pre name="code" class="cpp">#include<iostream> #include<string> #include<cstdio> using namespace std; class WithCC { public: int id; WithCC(int i):id(i) {printf("执行id为 %d 的WithCC构造函数!\n",id);} ~WithCC() {printf("执行id为 %d 的WithCC析构函数!\n",id);} }; WithCC withCC1(1); static WithCC withCC2(2); int main() { printf("进入main函数!\n"); WithCC withCC3(3); if(true) { printf("进入if语句!\n"); WithCC withCC4(4); printf("生成static对象\n"); static WithCC withCC5(5); printf("if语句即将结束!\n"); } WithCC* withCC6 = new WithCC(6); //delete withCC_new; printf("main函数结束!\n"); return 0; }
运行结果为:
相关文章推荐
- 【effective c++读书笔记】【第4章】设计与声明(1)
- 【effective c++读书笔记】【第4章】设计与声明(1)
- 重载重写_覆盖重定义隐藏.cpp
- C语言:自定义一个查找字串的功能函数,类似于<string.h>中的strstr()
- 《C++游戏开发》笔记十二 战争迷雾:初步实现
- C语言:通过函数指针来完成两个数的加减乘除(函数指针当做参数使用)
- 《编程之美》买书问题及c语言代码实现
- 《C++游戏开发》笔记十一 平滑动画:不再颤抖的小雪花
- C/C++中extern关键字详解
- C语言:通过函数指针来完成两个数的加减乘除
- c语言 实现字符串和数字的连接
- C++知识点随笔(二):继承、多态
- 瞧,这是UE4 C++
- C++开源框架
- C++默认构造函数的问题
- c++ primer Exercise 5.0
- C++ Primer Plus 学习笔记(第八章)
- C语言:通过指针函数输出二维数组中每个学生的成绩
- C++常用容器总结
- C++字符串总结