C++ 本地容器

标签 c++ function variables containers

在 C++ 中,当我使用确定大小的数组时,如:int a[10000]; 在函数中作为局部变量,允许的大小小于我将其声明为全局变量时的大小。

我知道这是由于函数的堆栈大小。

但是 vector、list、queue、stack、priority_queue、map 等容器呢?当像 int a[10000] 这样的局部变量时,它们是否受到限制?

最佳答案

std::array 具有与 C 风格数组相同的空间限制。所有其他标准容器都动态分配内存,因此不受堆栈大小的限制。

关于C++ 本地容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39535912/

相关文章:

c++ - 如何在多个 .cpp 文件中使用全局变量?

javascript - 从用 var 定义的函数中获取名称

php - 如果未设置变量,则使用函数初始化变量 - PHP

python - 变量赋值和修改(在python中)

c - 当我尝试生成每个数字都不同的 4 位整数时出现奇怪的模式

javascript - JavaScript 中的否定运算符?效果如何?

c++ - Visual C++ 2008/2010 编译器的优化程度如何?

c++ - 带有模板的 vector 在打印上下文时在 Valgrind 中给出错误

c++ - 如何将 lambda 与模板化 std::unique_ptr 一起使用?

javascript - 如何让这个嵌套函数挑战问题在 JavaScript 中发挥作用?