gpt4 book ai didi

c++ - 嵌套循环问题中的变量分配

转载 作者:太空狗 更新时间:2023-10-29 23:34:45 25 4
gpt4 key购买 nike

因为 obj,playingCard 对象是在嵌套的 for 循环中创建的,这是否意味着在第二个 for 循环完成后,obj 每次都从堆栈中释放?

还有一个小问题,编译器是否使用堆栈(类似于递归)来跟踪循环和嵌套循环?

<p></p>

for(int c = 0;c<nElems;c++) {
for(int z = c + 1;z<nElems;z++) {
playingCard obj;


}
}

最佳答案

每次迭代都会构造和解构它。

然而,在堆栈上,分配的概念(至少对于 VS 和 GCC)更加模糊。由于堆栈是一个连续的内存块,由编译器预先管理,因此没有像堆分配(新建/删除或 malloc/free)那样分配和释放的真正概念。编译器在堆栈上使用它需要的内存,稍后简单地回滚指针。

关于c++ - 嵌套循环问题中的变量分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1129191/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com