C++【类和对象】[2]

类和对象

类的默认成员函数(默认生成)

构造函数(初始化Init)

特点

1.函数名与类名相同
2.无返回值(也不用写void)
3.对象实例化系统会自动调用
4.构造函数可以重载
5.如果没有构造函数,会默认生成构造函数(有些编译器自动初始化为0或者随机值)

class Date
{
public:
Date()//构造函数(初始化)
{
_year=1
_month=1;
_day=1;
}
Date(int year,int month,int day)//这两个Date构成函数重载
{
_year=year;//也可以写成全缺省的方法,但是会有调用歧义,不能同时存在
_month=month;
_day=day;
}

void Print()
{
cout<<_year<

类里面的类型都是自定义类型并且该类型生成默认构造时,可以使用默认构造

析构函数(清理)

和构造函数相反,完成对资源的销毁(类似于destroy)
动态开辟空间的函数要写析构
自定义类型不用写
未开辟空间也不用写
{
free…
destroy…
nullptr…
0…
}
1.析构函数在类名前加~ (~Date)
2.无参数无返回值
3.生命周期结束编译器自动调用(防止内存泄漏)
4.一个类只能有一个析构,未定义会默认生成析构

拷贝复制(拷贝构造)

取地址重载

你可能感兴趣的:(c++,c++,开发语言)