第六周阅读程序
来源:互联网 发布:c语言生成1-20随机数 编辑:程序博客网 时间:2024/05/18 11:35
(1)
#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;}
运行结果:
(2)
#include <iostream>using namespace std;class MyClass{public: MyClass(int x=0):i(x) { cout<<"C"<<i; } ~MyClass() { cout<<"D"<<i; } void SetValue(int val) { i=val; } int GetVal() { return i; }private: int i;};int main(){ MyClass *p[3]; int i; for (i=0; i<3; i++) { p[i]=new MyClass(i); p[i]->SetValue(p[i]->GetVal()*2); } for (i=0; i<3; i++) delete p[i]; cout<<endl; return 0;}
运行结果:
(3)
#include <iostream>using namespace std;class B{public: B() { cout<<"default constructor"<<endl; } ~B() { cout<<"destructed"<<endl; } B(int i):data(i) { cout<<"constructed: " << data <<endl; }private: int data;};B Play(B b){ return b ;}int main(){ B temp = Play(5); return 0;}
运行结果:
(4)
#include <iostream>using namespace std;class example{public: example() { cout<<"Default Constructing! "<<endl; } example(int n) { i=n; cout<<"Constructing: "<<i<<endl; } ~example() { cout <<"Destructing: "<<i<<endl; } int get_i() { return i; }private: int i;};int sqr_it(example o){ return o.get_i()* o.get_i();}int main(){ example x(10); cout<<x.get_i()<<endl; cout<<sqr_it(x)<<endl; return 0;}
运行结果:
(5)
#include <iostream>using namespace std;class AA{public: AA(int i,int j) { A=i; B=j; cout<<"Constructor\n"; } AA(AA &obj) { A=obj.A+1; B=obj.B+2; cout<<"Copy_Constructor\n"; } ~AA() { cout<<"Destructor\n"; } void print() { cout<<"A="<<A<<",B="<<B<<endl; }private: int A,B;};int main(){ AA a1(2,3); AA a2(a1); a2.print(); AA *pa=new AA(5,6); pa->print(); delete pa; return 0;}
运行结果:
学习心得:
在运行程序之前自己先写了一下程序的结果,但是跟运行结果不一样,还是对析构函数不太熟悉。
0 0
- 第六周阅读程序
- 第六周阅读程序
- 第六周 阅读程序
- 第六周 阅读程序
- 第六周 程序阅读
- 第六周阅读程序一
- 第六周阅读程序二
- 第六周程序阅读三
- 第六周阅读程序四
- 第六周阅读程序五
- 第六周 阅读程序一
- 第六周 阅读程序二
- 第六周 程序阅读三
- 第六周程序阅读1
- 第六周程序阅读二
- 第六周程序阅读4
- 第六周程序阅读5
- 第六周程序阅读(3)
- KMP 水水
- 反思HTML5的失败和四个谎言
- ACM大量习题题库
- Linux启动过程详解
- Fresco介绍 - 一个新的android图片加载库
- 第六周阅读程序
- R语言对苏州天气的分析及预测 温度篇
- mysql数据库中的换行符与textarea中的换行符
- 关于举办 2015年 Autodesk 助力云应用项目开发活动通知
- android在JNI_OnLoad入口函数下断点动态调试so库
- 在MacOS上homebrew的安装和使用
- 第六周项目五 友元类
- HTML5 canvas性能之画圈
- 老码说编程玩转swift读书笔记1