我试图了解C ++的工作原理。当您在循环内(例如在for循环内)声明新变量(int x)时。内存在循环内分配给变量x,但是退出for循环后该内存又会如何?我从朋友那里得到的理解是Java将自动取消分配内存,但是C ++呢?
谢谢。
如果在堆栈上声明(即通过int x = ...),并且在变量离开其作用域时将被释放。如果在堆上声明(即通过int *x = new int(...)),则不会释放它。在这种情况下,您必须明确使用delete运算符。
| 归档时间: |
|
| 查看次数: |
3135 次 |
| 最近记录: |