本博客(http://blog.csdn.net/livelylittlefish )贴出作者(三二一@小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正!
基本概念
1. 声明
Declaration:告诉编译器某个东西的名称和类型,但略去细节。
2. 定义
Definition:提供编译器一些声明所遗漏的细节。
对对象而言,定义是编译器为此对象分配内存的地点。
对function和function template而言,定义提供了代码本体。
对class和class template而言,定义类出他们的成员。
3. 初始化
Initialization:是给予对象初值的过程。
对用户自定义类型的对象而言,初始化由构造函数执行。
4. default构造函数
是一个可被调用而不带任何实参者,即要么没有参数,要么每个参数都有缺省值。例如:
5. explicit关键字
构造函数被声明为explicit,如上所示,可以阻止他们被用来执行隐式类型转换(implicit type conversions),但他们仍可以被用来进行显式类型转换(explicit type conversions)。
explicit的构造函数禁止编译器执行非预期的类型转换。
例如,