社区
C++ 语言
帖子详情
C++中既然有了类,为什么还要有结构体?
sinperwolf
2004-09-29 11:07:07
我是搞java的,现在想学习C++,有很多地方还不是很清楚,请大家多多指教
...全文
746
23
打赏
收藏
C++中既然有了类,为什么还要有结构体?
我是搞java的,现在想学习C++,有很多地方还不是很清楚,请大家多多指教
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
eintain
2004-09-29
打赏
举报
回复
这个问题在Lippmam的《深度探索C++对象模型》第一章中有较详细的论述,建议楼主看看!
Johnson545
2004-09-29
打赏
举报
回复
首先,使用结构体所耗费的资源要比类小,但是结构体的变量显然不能有方法,不符合我们对现实世界问题的分析。
sier
2004-09-29
打赏
举报
回复
我觉得主要是两个的类型不同,类是引用类型,结构是值类型。我刚看的。各有各的好处。
sinperwolf
2004-09-29
打赏
举报
回复
其实 C++ 里 struct 和 class 除了默认访问权限以为,几乎是完全一样的东西。
-------------------------------------------------------
struct和class的差别不止这些吧,在我看来struct的作用就是为了保存数据
sanzheng
2004-09-29
打赏
举报
回复
同意楼上的楼上,类是结构的扩充,可以用类完全代替结构
nabie
2004-09-29
打赏
举报
回复
结构体还是很爽的,如果不需要访问权限控制和成员函数的话,比如只为定义一个数据块的话,我还是会选用结构的。
其实 C++ 里 struct 和 class 除了默认访问权限以为,几乎是完全一样的东西。结构里同样可以有构造和析构函数,同样可以定义函数成员和划分访问权限。struct 本身就只是为了兼容 C 而存在的,不光是使用习惯问题,还有可以几乎不用改动的编译原来用 C 写的代码。
也许是我的根深蒂固的 C 的思想的延续,也许是 Windows API 里有太多的结构,我现在还是经常使用结构的。
o1n
2004-09-29
打赏
举报
回复
对,同意楼上的,历史问题。
向下兼容这种原则所迫!
北极猩猩
2004-09-29
打赏
举报
回复
这是历史遗留问题,struct的保留是为了兼容C。
sinperwolf
2004-09-29
打赏
举报
回复
如果不考虑c程序员,从oo角度是不是改少用或不用结构体呢?
pacman2000
2004-09-29
打赏
举报
回复
一点点小区别,其实就是为了让以前的程序可以直接兼容。
vinep
2004-09-29
打赏
举报
回复
呵呵,就是Java是新生的,C++要兼容C, 如果没了结构体会让C的程序员感觉不爽的
grooving
2004-09-29
打赏
举报
回复
类中成员默认为private
结构体中为public
所以结构体在有些方面要比类使用起来简单。
whamjohn
2004-09-29
打赏
举报
回复
我个人认为要看程序的大小和复杂度,小的程序用结构体,速度快,简单,可读性好;当程序有较复杂的结构时,结构体就不太满足了.当然,保留结构体,也有出于与C语言兼容的考虑.
hcj2002
2004-09-29
打赏
举报
回复
保留结构体是为了兼容C程序
umbrella1984
2004-09-29
打赏
举报
回复
不会啊,用了JAVA再来C++一样很轻松啊,主要还是WINDOWS API跟MFC那些东西比较麻烦,现在还在啃这些东西。。。郁闷。
shthycz
2004-09-29
打赏
举报
回复
同意楼上的看法。
个人觉得结构用起来方便,代价比类小。
sinperwolf
2004-09-29
打赏
举报
回复
用久了java,C++还一下子不太适应
sinperwolf
2004-09-29
打赏
举报
回复
但我在网上下载的好多源代码都喜欢用结构体,从面向对象的角度来说这样不太好吧?
然道C++的程序员对结构体情有独衷?如果是我,我会第一考虑用类,而不是结构体
daylove
2004-09-29
打赏
举报
回复
同意楼上的,
seabreeze9802
2004-09-29
打赏
举报
回复
结构体是C里边的,类是C++新加的,类有构造函数和析构函数,还引入了封装、继承和多态的概念,比结构体更符合面向对象的设计概念
保留结构体完全是为了兼容C程序,让原本习惯使用C的人不至于一下子不能用
加载更多回复(3)
C++
中
结构体
与
类
的区别介绍
在参与以
C++
为编程基础的项目应用
中
总会遇到
结构体
类
型与
类
的数据
类
型,但是其具体应用区别模糊不清 现将其区别总结如下,欢迎补充共同学习(先介绍C和
C++
中
结构体
的不同,再对比
C++
中
结构体
与
类
的区别) 一、C和
C++
...
c++
中
结构体
和
类
的区别
转载来源:原文
C++
中
的struct对C
中
的struct进行了扩充,它已经不再只是一个...既然这些它都能实现,那它和class还能有什么区别? 最本质的一个区别就是默认的访问控制: 默认的继承访问权限 struct是public的,cla...
C++
中
结构体
与
类
的区别
C++
中
的struct对C
中
的struct进行了扩充,它已经不再只是一个包含不同数据
类
型...既然这些它都能实现,那它和class还能有什么区别? 最本质的一个区别就是默认的访问控制: 默认的继承访问权限:struct是publi...
c++
中
的
结构体
和c语言
中
的
结构体
的区别
既然这些它都能实现,那它和 class 还能有什么区别? 最本质的一个区别就是默认的访问控制,体现在两个方面: 1)默认的继承访问权限。struct是public的,class是private的。 你可以写如下的代码: struct A
C++
中
结构体
与
类
的区别(struct与class的区别)
简介
C++
中
的struct对C
中
的struct进行了扩充,它已经不再只是一个包含不同数据
类
型的数据结构了,它已经获取了太多的功能。 struct能包含成员函数吗?...既然这些它都能实现,那它和class还能有什么...
C++ 语言
64,637
社区成员
250,559
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章