C++ 类在数据结构上的重要性

C++ 类在数据结构上的重要性,c++,C++,类对数据结构或数据结构对类的意义是什么 好的,最基本的是我们可以使用“类中的访问说明符”,这意味着我们可以阻止一些人,允许一些人访问我们的数据。 接下来是数据隐藏 但是,区分类和数据结构的主要因素是什么?我的意思是,如果我们有类,为什么还需要数据结构?反之亦然。C++有基本的数据类型和类 Struct和Class都是引入新类的关键字。默认值略有不同 数据结构是具有某种不变性的数据排列。它们可以是一个类,可以包含类,也可以是完全无类的 它们是不同种类的东西。这就像问钢铁和汽车有什么区别 在课程作业

类对数据结构或数据结构对类的意义是什么

好的,最基本的是我们可以使用“类中的访问说明符”,这意味着我们可以阻止一些人,允许一些人访问我们的数据。 接下来是数据隐藏


但是,区分类和数据结构的主要因素是什么?我的意思是,如果我们有类,为什么还需要数据结构?反之亦然。

C++有基本的数据类型和类

Struct和Class都是引入新类的关键字。默认值略有不同

数据结构是具有某种不变性的数据排列。它们可以是一个类,可以包含类,也可以是完全无类的

它们是不同种类的东西。这就像问钢铁和汽车有什么区别


在课程作业中,老师要求你知道老师的定义或课文的含义。术语的意思是它们所在的上下文告诉它们的意思。这是一个“你注意到了吗”的问题,而不是“你知道这个事实吗”;在已经问及互联网时,你已经失败了。

< P>语法方面,在C++中,<>代码>类< /COD>和<代码>结构> <代码>的唯一区别是默认情况下<<代码>结构> <代码>的成员是公共的,而<>代码>类< /代码>的成员是默认的私有的。 然而,从隐含的设计意图的角度来看,有一个更大的区别
struct
was/是C的一个特性,它(在C和C++中)用于帮助程序员以有用的方式组织简单的旧数据。(例如,如果您知道persons数据库中的每个
人员都需要存储该人员的名字、姓氏和年龄,那么您可以将两个
字符
数组和
int
放在一个
结构人员
中,从而使作为一个单元跟踪所有数据比存储ea更方便。)这些字段的名称(单独列出)

C++继续提供这种C风格的结构功能,但随后又进一步添加了其他特性,以更好地支持面向对象编程。特别是,C++为封装添加了明确的支持(通过代码>私下的<代码>和<代码>保护< /COD>关键字),通过继承继承功能,通过方法明确地捆绑代码和数据,并通过虚拟方法实现运行时多态性。请注意,所有这些特征可以通过C按照手动编码遵循某些编码约定,但通过显式地支持它们作为语言的一部分,C++使它们更容易正确和一致地使用。

这样做之后,C++将继续使浑浊的水域变为一点点,通过使所有新的功能可用于<代码>结构> <代码>以及<代码>类< /代码>。(这就是技术差异如此之小的原因,如第一段所述)然而,我认为大多数程序员在看到定义了

struct
时,往往会暗中期望该struct用作简单的C风格数据存储/数据组织容器,然而,当他们看到一个
类时,他们希望它不仅包括“一些原始数据”,还包括一些在类的方法中实现的相关业务逻辑,并且该类将通过要求调用代码调用这些方法来强制执行其特定规则/不变量,而不是允许调用代码直接读/写类的成员变量。(这就是为什么在
中不鼓励使用公共成员变量,而在
结构
中不鼓励使用公共成员变量的原因——因为类对象中的公共成员变量与此期望相矛盾,并且违反了规则)。

只是一个猜测,数据结构可能是C遗留下来的。不过,这只是我的猜测。这是一个家庭作业问题吗?如果你问的是
class
struct
之间的区别,那么两者之间的区别就不多了,我相信大家已经问过了。如果你想得到概念上的差异,那么这是一个面向对象编程的设计问题,而不是C++。我不理解这里的问题。这两个问题并不相互排斥。是的,这是一个家庭作业问题。老师让我们指出其中一个对另一个的重要性。至少10-15。存储数据的是数据结构。为了使其有用,您还需要一个API,以便人们可以修改或查询数据结构。在C语言中,这是通过自由函数实现的。在C++中,您可以以相同的方式来完成,或者可以将数据结构及其API都构建为类。其优点是,如果没有类包含的API(您提到的数据隐藏),结构中的数据根本无法使用。哈哈..太苛刻了。也许你是对的,但我把它放在这里不是为了知道答案,而是为了深入了解是否有一些我不知道的特定于类或特定于结构的东西。是的,你的回答很有帮助,所以谢谢:)