Loops 在循环中重新声明变量
如果我有这样的代码:Loops 在循环中重新声明变量,loops,Loops,如果我有这样的代码: int n = // some arbitrary number while (n--) { int t=0; // do somethings here } 变量t是否在(n--)时占用另一个空格。也就是说,如果在第一次运行时,t接受单元格A0,在第二次运行时,它接受单元格A1,然后是单元格A2,依此类推。。。吃掉记忆细胞 注:这是在“非垃圾收集”语言的情况下,如C,C++泛化,存在过度简化的风险-- 如果您从范围的角度来看这个示例,那么在过程启动时有一个分配。
int n = // some arbitrary number
while (n--)
{
int t=0;
// do somethings here
}
变量t
是否在(n--)时占用另一个空格。也就是说,如果在第一次运行时,t
接受单元格A0,在第二次运行时,它接受单元格A1,然后是单元格A2,依此类推。。。吃掉记忆细胞
注:这是在“非垃圾收集”语言的情况下,如C,C++泛化,存在过度简化的风险-- 如果您从范围的角度来看这个示例,那么在过程启动时有一个分配。大括号只是在大括号内重新启动t的范围 如果从创建和销毁的角度来看,循环迭代中的每个{都会创建一个新的t,但每个}都会删除它 在这些模型中,循环都不会产生重复的内存使用