【问题标题】:Why are objects not considered a type of data structure? [closed]为什么对象不被视为一种数据结构? [关闭]
【发布时间】:2021-10-20 14:48:48
【问题描述】:

最近我刚开始学习数据结构和算法,我一直想知道为什么数组是一种数据结构,而对象不是。因为我们知道一个对象会保存数据,然后具有像数组一样操作它们的功能。我已经用谷歌搜索了这个,但我还没有找到答案。如果有人能解释这一点,我将不胜感激。 这是一个与我有关的问题,希望这能进一步澄清我的问题https://www.reddit.com/r/learnprogramming/comments/pmv63n/why_is_an_object_not_a_data_structure/

您可以在此处查看有关数据结构类型的更多信息 https://www.google.com/amp/s/searchsqlserver.techtarget.com/definition/data-structure%3famp=1

【问题讨论】:

  • 是什么让您认为在所有这些场景中对象不是一种数据结构?有一个巨大的[需要引用],需要逐个语言
  • 你在哪里读到的? Afaik“数据结构”不是一个正式的 C++ 术语。
  • 我想你被挂断了。当研究“数据结构”时,它通常意味着“通用”数据结构:数组、链表、树、哈希表等。对象是特定于语言/实现的数据结构。
  • 数组是一个对象(至少在 C++ 术语中),所以这个问题是基于矛盾的。
  • 只有添加此声明的来源才能回答/澄清。问题是,数组是对象,因此说“数组是数据结构,但对象不是”是没有意义的

标签: c++ object data-structures


【解决方案1】:

我不知道数据结构实际上是为 C++ 定义的,但如果我正确理解您的问题,我会按照以下方式进行区分。

数组是一种保存数据的容器。数组的一个实例是 一个对象,是数组数据结构的一种具体用途。


// Instantiation of a vector object - the object itself is not a 'data structure' it is a specific use of a data structure
std::vector <int> x = {1, 2, 3};

// The data structure itself is just std::vector

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-05
    • 2021-05-18
    • 1970-01-01
    • 1970-01-01
    • 2020-01-25
    • 2011-10-02
    相关资源
    最近更新 更多