c++中有struct为什么还要引入class,c中的struct和c++中的struct的区别

http://zhidao.baidu.com/link?url=8ZGLAwfPbKhObii9JWSOn95Je8vFyl_wiDCEYiO3RJ9_pPXbGbs3mrbetpB1uQtNh9QKJh2BXqcuh9t7tgJy1a
c++是在c语言的基础上,进行了很多功能扩展,其中最重要的一条,就是引入了class。引入class的最大好处就是,使c++可以进行面向对象编程。

面向对象编程,简称OOP,具备三个要素:1)封装性 2)继承性 3)多态性

诚然,struct可以实现成员变量和成员函数的封装,但是,struct不能进行继承,更不能进行多态功能的实现。class可以进行类的继承,并且,其对虚函数的支持,使c++的类具有多态的性质。

因此,引入class,是c++在c语言基础上重要的拓展,这是struct难以实现的。
http://zhidao.baidu.com/link?url=Dh_7Mi5prRWwrFEkoiM3KUlIZoDlaw8g2T_nKKuHWLeHIJvByq1WDeQNcwvtpE--KZnpU3MAWFBvOzekxZXXgK
struct在C的范畴是原始狭义的结构体--复合数据类型(狭义在只包含数据成员)
在C++里理论上也是结构体,也即也是--复合数据类型,但成员不仅限于数据,含可以包含函数成员等,此种复合数据类型称为“类”,这就是“++”的本意,C++比C多了“类”这东西。
慢慢体会吧,这是个很基本很核心的概念,编程的范畴是清楚明了的,不存在模糊不清的地方。
我的解说试图让你能回答一下问题:(若能清晰肯定回答出来,即可领悟本质了)

为什么叫C++?到底比C多了什么?类是什么?
阿门。。。


                
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值