构造函数
构造函数就是用来在创造对象时初始化对象,为对象数据成员赋初始值。
/特征:构造可以重载
无参:默认构造
编译器自动生成的构造函数也为无参的构造函数,它也是默认构造
没有显式定义任何一个构造函数,编译器会自动生成无参构造,否则不会自动生成
任何一个构造函数都会自动调用自定义成员的默认构造
如果没有默认构造,编译器报错
全缺省:也是一种默认构造
```cpp
class A
{
public:
int _a;
A(int a = 10)
{
_a = a;
cout << "A()" << endl;
}
};
class Date
{
public:
Date(int year = 1, int month = 1, int day = 1)
{
_year = year;
_month = month;
_day = day;
cout << "Date(int,int,int)" << endl;
}
Date(int year , int month , int day, int num)
{
_year = year;
_month = month;
_day = day;
cout << "Date(int,int,int,int)" << endl;
}
void Display()
{
cout << _year << "-" << _month << "-" << _day << endl;
A a;
}
void SetDate(int year, int month, int day)
{
_year = year;
_month = month;
_day = day;
}
private:
int _year;
int _month;
int _day;
};