这个问题已经在这里有了答案:




已关闭10年。






我只是很好奇,C++不允许可变长度数组有任何特殊原因吗?

最佳答案

两个原因:

  • C++基于C89(1989年发布的C标准)。 VLA仅在C99中引入。
  • C++具有std::vector<>和许多其他容器,这就是为什么我相信C++永远不会打扰VLA的原因。当为C.
  • 发明VLA时,已经有了它们。

    关于c++ - 为什么C++不支持可变长度数组? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3782628/

    10-10 13:17