关于c++类的思考

必会知识点:
1、类的三大特性:封装、继承和多态。
这里写图片描述
2、封装是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。封装的意义在于保护或者防止代码(数据)被我们无意中破坏。
3、继承就是在一个已经存在的类的基础上建立一个新的类,父类派生出子类,派生类是基类的具体化,基类是派生类的抽象。公用继承的子类不能访问父类的私有成员;私用继承会把所有的父类全变成私有,类外不可访问;保护继承会把所有分类变成保护类。
4、保护成员,从类的用户角度来讲,保护成员等价于私有成员,在类外都不可被访问,但是保护成员可以被派生类的成员函数引用。
5、多态,简单来说就是“一个接口,多种方法”,程序在运行时才决定调用的函数。多态性是通过虚函数来实现的,虚函数允许子类重新定义成员函数,而子类重新定义父类的做法称为覆盖(override),或者称为重写。(重写的话可以有两种,直接重写成员函数和重写虚函数,只有重写了虚函数的才能算作是体现了C++多态性)而重载则是允许有多个同名的函数,而这些函数的参数列表不同,允许参数个数不同,参数类型不同,或者两者都不同。如果没有使用虚函数的话,即没有利用C++多态性,则利用基类指针调用相应的函数的时候,将总被限制在基类函数本身,而无法调用到子类中被重写过的函数。
6、封装可以使得代码模块化,继承可以扩展已存在的代码,他们的目的都是为了代码重用。而多态的目的则是为了接口重用。也就是说,不论传递过来的究竟是哪个类的对象,函数都能够通过同一个接口调用到适应各自对象的实现方法。
7、类的四大默认函数:构造函数、析构函数、拷贝构造函数、赋值函数。

猜你喜欢

转载自blog.csdn.net/snwang_miss/article/details/78553600