一、构造函数、默认构造函数
(1)、构造函数
构造函数是特殊的成员函数
创建类类型的新对象,系统自动会调用构造函数
构造函数是为了保证对象的每个数据成员都被正确初始化
函数名和类名完全相同
不能定义构造函数的类型(返回类型),也不能使用void
通常情况下构造函数应声明为公有函数,一般被隐式地调用。
构造函数被声明为私有有特殊的用途,比如单例模式,以后详谈。
构造函数可以有任意类型和任意个数的参数,一个类可以有多个构造函数(重载)
(2)、默认构造函数
不带参数的构造函数
如果程序中未声明,则系统自动产生出一个默认构造函数,是空函数
如果程序实现任何一个构造函数(包括拷贝构造函数),那么编译器将不再提供默认构造函数。
C++ Code
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#ifndef _TEST_H_
#define _TEST_H_ class Test { public: // 如果类不提供任何一个构造函数,系统将为我们提供一个不带参数的 // 默认的构造函数 Test(); Test( int num); void Display(); Test & operator=( const Test &other); ~Test(); private: int num_; }; #endif // _TEST_H_ |
C++ Code
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
#include
|