c++与c相比最突出的部分就是多了一个类的概念,由此衍生出了封装,继承,重载,多态。
封装的概念有点像c语言里的结构体,但是结构体不能够成员函数,也不能定义变量的访问权限,也不能够被继承。
而继承就是一个类可以由其父类继承得到,如你定义了一个类为 动物,你可由动物这个类来定义 狗 猪 等等类别。
而重载就是最容易理解的是运算符的重载, 比如在c语言里面的 - 运算符不能够直接实现 (2008.5.1 - 2006.1.2)的运算,而在c++中通过运算符的重载就可以直接实现如上的日期运算了。
而多态比较难以概括,还要涉及到虚函数的概念,简单的说就是可以更具类别来选择相应的成员函数的实现形式。
比如在动物类里面有一个走的动作为虚函数,比如它的实现是通过4条腿移动来完成。
现在定义了两个类别,人 和 狗。
人就需要重新修改 走 这个动做(双腿行走), 而 狗 就不需要(四腿行走)。
此时如果通过 类动物 来声明一个类指针,如果指针指向人,调用走的时候,就会自动的调用 (双腿行走) 而指向 狗 则会调用 (四腿行走)。
则这就是同一个走出现了两种实现。
也就是多态了。
如果能够真正理解这些概念,对于c++的学习,以及Vc中mFc的学习都是很有帮助的。
原文地址:科技数码 https://www.weidianyuedu.com/content/4320553769249.html