c++的构造和析构

mac2024-02-01  51

       因为c++比c语言多了类和对象的概念,类是一群类似的功能的抽象描述,对象则是类的实例化。一个类包含三种访问控制属性,由三种访问控制符所控制,即分别为public、private和protected三种数据属性。每个属性又都由各自的成员数据和成员函数(行为)组成。private和protected访问控制符下的数据只能在类内访问,而不能在类外直接访问,public访问控制符下的成员数据和成员函数则可以同时在类内和类外使用,并且可以为其他两个访问控制符提供与类外联系的接口。即在类外可以通过public控制符下的成员函数(行为)来间接访问其他两个控制符下的数据。

 c++的构造:实质上就是对象的初始化,指的是类中public访问控制符下的构造函数,当没有手动构造 构造函数 的时候,系统有默认的构造函数(即什么都不做),并且还有默认的用自身构造自身的拷贝构造,但是这种默认的拷贝构造是浅拷贝,当类中有手动申请内存时,拷贝的时候,新的指针指的是同一个内存地址。当类中进行了手动构造 构造函数(分为无参构造和有参构造)时,在对象实例化时会自动调用构造函数。

同时构造函数在手动构造时还有初始化列表。

c++的析构;实质上就是对象的释放,当该类中有手动申请内存时,需要在类内public访问控制符下构造 析构函数 ,在对象作用域结束后系统会自动调用该对象内的析构函数。

最新回复(0)