最佳答案
c++从C语言中继承了数组,在C语言中数组几乎随处可见。c++提供了更容易使用且更不容易出错的抽象(c++ 98开始使用std::vector<T>
, c++ 11开始使用std::array<T, n>
),因此对数组的需求不像C中那样经常出现。然而,当你阅读遗留代码或与用C编写的库交互时,你应该对数组的工作方式有一个牢固的把握。
本FAQ分为五个部分:
如果你觉得这个常见问题中缺少了一些重要的内容,请写下答案并将其链接到这里作为附加部分。
在下面的文本中,"数组"意思是“C数组”,而不是类模板std::array
。假定具有C声明器语法的基本知识。注意,下面演示的手动使用new
和delete
在遇到异常时是极其危险的,但这是另一个常见问题的主题。
(注意:这意味着是Stack Overflow's c++ FAQ。如果你想批评在这种形式下提供FAQ的想法,那么在meta上的帖子开始了这一切将是这样做的地方。这个问题的答案在 c++聊天室中监控,FAQ的想法最初就是在这里开始的,所以你的答案很可能会被想出这个想法的人读到。)