下面程序的void test(Base& b)是什么意思,为什么都指定是Base类了,还可以进SubClass,希望能详细说一下

2020-05-17 教育 52阅读
class SubClass:public Base 这一句说明SubClass类继承自Base类,即是Base类的一个子类
如此,SubClass就具备Base类所有非private的成员函数和属性。
你可以认为:SubClass属于Base类,但反过来却不成立,就好比你可以说正方形是矩形,但不能说矩形是正方形,事实上要是用类的概念去说的话,正方形类继承自矩形类,正方形类即是矩形类的一个子类
你向一个函数传递一个正方形的类,但形参要求的类型是矩形类,依然是完全匹配的,这也正是面向对象的特色,好好体会一下吧!加油!
void test(Base& b)里面的& 是引用的意思,这是C++里特有的,和用指针效果一样,但是比用指针方便的多,是传址的
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com