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