【发布时间】:2014-03-06 01:04:52
【问题描述】:
我知道,在 C++ 中,有两种数组:静态数组和动态数组。但我有一个问题:
为什么在某些情况下我们会使用静态数组而不是动态数组,而在我看来,动态数组比静态数组可以做更多的事情?
为什么我们要在所有情况下都使用动态数组?
【问题讨论】:
-
一个原因是它们需要动态内存分配,这可能被认为成本太高。此外,它们必须手动取消分配,这很容易搞砸。后一个问题可以通过使用例如来避免。
std::vector. -
动态数组通常会带来更多开销(至少是额外的间接级别)。
-
@juanchopanza '这可能被认为过于昂贵' 或者根本不适用于该平台(这是我的日常面包和黄油之一)......跨度>
-
@πάνταῥεῖ 我想那时使用另一个平台成本太高了:-)
标签: c++