第九周上机实践项目-阅读项目
2016-04-23 12:44
260 查看
/* *Copyright (c)2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作 者:刘涛 *完成日期:2016年4月23号 *版 本 号:v1.0 * *问题描述:动态分配内存 */ #include <iostream> using namespace std; class A { public: A(){cout<<"A";} ~A(){cout<<"~A";} }; class B { A *p; public: B() { cout<<"B"; p=new A(); } ~B() { cout<<"~B"; delete p; } }; int main() { B obj; return 0; }
运行结果:
运行过程:主函数里定义了一个B类的对象,所以执行B的构造函数,输出B,在B的构造函数里又对A分配了内存,所以执行A的构造函数,输出A,然后执行完B类,被释放,执行B的析构函数,输出~B,然后删除p,由于p是A的对象,所以执行A的析构函数,输出~A。
知识点总结,学习心得:new和delete的用法,new完必须释放,delete,还有不要忘记了析构函数在执行完函数后会被释放。
相关文章推荐
- The Java™ Tutorials
- 必要时进行保护性拷贝
- 拿到阿里,网易游戏,腾讯,smartx的offer的过程 (转)
- HTTP状态码
- QT Layout 布局的重要性
- jsp页面报 $ is not defined
- spring多数据源配置
- JVM内存GC机制
- 下载老版本的xcode
- 数据结构--单链表
- 面试之1604
- 【浅谈bootsrap响应式布局】
- Linux Shell处理文本最常用的工具大盘点
- ubuntu安装jdk-6u45-linux-x64-rpm.bin
- 【Android 学习】小知识Notification的新旧用法
- 从“架构师书单”讲开去
- ajax
- Windows服务定时执行任务
- 简单的cookie读写封装
- c/c++优化结构控制