【一天一篇CPP】inline、类的存储,简单的构造函数、析构函数
来源:互联网 发布:简单的c语言程序例子 编辑:程序博客网 时间:2024/05/20 00:14
1.inline 须知:一般非类成员的函数inline声明即可,在类成员函数中,若为inline声明,成员函数声明和成员函数的定义必须放在同一个文件。
2.类的大小:经过sizeof测试,得知:一般的数据成员【不论const还算mutable还是】都要计算,不论任何类型的函数都不计入内。
3.对于大小比较小的类,尽量用指针或引用作为函数的参数,而不是一个使用形参副本,这样不用复制构造它。但假如函数要计算很久,而类相对比较小,直接建立副本参数,而不使用引用和指针也可以。
4.带默认参数的构造函数
eg: Box( int h, int w = 10, int len = 20) :height(h),width(w),length(len) { }
对于使用默认参数的情况,要避免重定义,最好放在声明处而不是定义处,因为这样使用者方便阅读。
5.析构函数的调用顺序【局部对象】
#include<iostream>using namespace std;class temp{public:temp(int A) :a(A){}int a;~temp(){ cout<< a<<endl;}};int main(){temp a(10);temp b(200);}
输出为:
200
10,也就是说先构造的后析构。
6.系统调用构造函数和析构函数的时机
a.全局对象,若多文件,构造执行的顺序不确定【但是在main之前,或者说开始处】,main退出则析构。
b.局部变量:建立对象是构造,复合体结束时析构【先构造后析构】
c.static局部对象:第一次使用时构造,mian退出时析构。
d.堆对象:new则构造,delete则析构!
- 【一天一篇CPP】inline、类的存储,简单的构造函数、析构函数
- 【一天一篇CPP】派生类的构造函数和析构函数
- 【一天一篇CPP】不同类型数据间的转换【转换构造函数、类型转换函数】
- 包含析构函数和构造函数的程序.cpp
- inline构造函数的问题
- 类的inline函数
- 构造函数调用另一个构造函数(CPP&JAVA的对比)
- 简单的构造与析构函数
- ......简单的构造函数
- 简单的构造函数~~
- 带参数的构造函数.cpp
- 关于内联函数的几点总结以及构造析构是否可以是inline的
- 关于内联函数的几点总结以及构造析构是否可以是inline的
- 拷贝构造函数与析构函数的简单解析
- srting的类构造函数、析构函数、拷贝构造函数与赋值构造函数
- string类的构造函数,析构函数,拷贝构造函数和赋值构造函数
- C++类成员函数在.cpp中设置成inline后无法解析的问题
- 【一天一篇CPP】C++的虚基类
- Ajax(配合ScriptManager控件使用)
- ehcache详细解读
- Actionscript3.0 性能优化(二)
- Android Play V3 Consuming a Purchase
- 拉卡拉手机刷卡器音频通讯技术原理初步分析
- 【一天一篇CPP】inline、类的存储,简单的构造函数、析构函数
- win7下GraphEdit无法查看filter graph
- android的Touch事件onInterceptTouchEvent和onTouchEvent
- 递归算法及经典递归例子代码实现
- SQL Server中利用正则表达式替换字符串
- 位域使用注意
- 如何查看APK内文件
- 深入源码之SLF4J
- expdp/impdp参数说明