构造函数
作用: 其实就是给对象分配内存空间,给数据成员分配内存空间,并给数据成员进行初始化!
格式: 函数名和类名是一样;没有函数类型
类名(){}
使用:不需要我们自己去调用,创建对象的时候,系统会自动去调用;
调用哪一个构造函数呢?
就看你在创建对象的时候有没有给参数!根据参数的个数、类型、顺序去匹配合适的构造去执行! 构造函数是可以重载的!!!
注意:当我们自己没有写构造函数的话,系统会帮我们生成有个 无参、函数体无内容的一个默认的构造函数!
当我们自己写了构造函数,系统不会再帮我们生成构造函数了!
什么是默认构造:
构造函数没有参数或者是构造函数的所有参数都有默认值,就是默认构造函数
默认构造的几种情况:
自己写的构造函数没有参数的
系统会帮我们生成的
自己写的构造函数参数都有默认值
注意:在一个类中,默认构造只能有一个,他们是互斥
析构函数
作用: 就是释放了对象的资源的
格式: ~类名(){} 无参数
何时调用: 对象要被释放的时候,系统会自动的帮你去调用析构函数
注意: 我们自己没有写析构函数,系统也会帮我们生成一个空的析构函数,然后自动的调用!
当我们自己写这个析构函数,系统就不会帮我们生成了!
析构函数是不可以重载的!!!!
创建类对象的方法:
类名 对象名;
类名 *对象名 = new 类名; delete 对象名去释放!