请问C++的类和结构有什么区别????

guoming1 2002-08-03 10:22:27
本人在看标准C++宝典啊,上面说结构体和类差不多,那他们有区别吗??
什么时候用类,什么时候又用结构呢???刚学C++不太清楚啊
...全文
74 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
凌波微搏 2002-08-03
  • 打赏
  • 举报
回复
如果你看了《深度探索C++对象模型》的话,你就知道,其实没有什么实质性的区别,就是结构默认的存储权限是Public,除此之外就是关键字不同了。
不解 2002-08-03
  • 打赏
  • 举报
回复
该说得都说了!
geeksky 2002-08-03
  • 打赏
  • 举报
回复
类比结构多一个保护级别呀!!!
hfc 2002-08-03
  • 打赏
  • 举报
回复
类的成员默认为私有,结构则默认为共有!
step_by_step 2002-08-03
  • 打赏
  • 举报
回复
他们之间只有一个区别,其他都相同,就是
c++中类的默认存取权限是private,而结构的默认存取权限是public
仅此而以。
anssion 2002-08-03
  • 打赏
  • 举报
回复
类的成员默认是私有的,结构体的成员默认是公有的.其实从某种意义上说结构体可以看作是一种特殊的类。其实他们体现的都是一种封装。至于用法,当你所需要的对象既包含成员数据,又包含成员函数,则定义类;若仅仅只是包含成员数据,则可定义为结构体。但要注意结构体的所谓“封装”是没有“类”所具有的安全性,因为结构体的成员默认是公有的!
chinaeagle 2002-08-03
  • 打赏
  • 举报
回复
解释够清楚了!
lufree 2002-08-03
  • 打赏
  • 举报
回复
关注
kwok_1980 2002-08-03
  • 打赏
  • 举报
回复
同意楼上的
czn 2002-08-03
  • 打赏
  • 举报
回复
两者仅有一个不同点:
类的成员默认是私有的
结构体的成员默认是公有的
zhdleo 2002-08-03
  • 打赏
  • 举报
回复
类有 公有,私有! 结构体没有.

但在使用效果上差不过,

不知道你注意到没有,一些用C++语言描述的数据结构的书,里面有些是用结构体去完成实现的,有些则是用类实现的.
jamesfangjing 2002-08-03
  • 打赏
  • 举报
回复
结构中的所有成员都是公有的,而类中可以有私有的.
所以说,结构是PUBLIC的类
Zark 2002-08-03
  • 打赏
  • 举报
回复
结构中的所有成员都是公有的,而类中可以有私有的.C只支持结构,不支持类.如果你学C++的话就不用管结构了.
rediori 2002-08-03
  • 打赏
  • 举报
回复
宏观上看 结构是PUBLIC的类
rivershan 2002-08-03
  • 打赏
  • 举报
回复
看C++编程思想
bighead 2002-08-03
  • 打赏
  • 举报
回复
czn(vcopengl) is right
Oversense 2002-08-03
  • 打赏
  • 举报
回复
c++里面,一模一样,除了2点区别
1.C++中类的默认存取权限是private,而结构的默认存取权限是public。
也就是说
struct a{
void i(){}
}
里面的void i(){}是pubic的
class a{
void i(){}
}
里面的void i(){}是private的

2.在继承的时候,struct默认的是公有继承,private默认是私有继承
struct b:a{}
等于 struct b:public a{}
class b:a{}
等于 class b:private a{}

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧