C++内存释放问题
C++中如何释放非动态分配的内存呢?比如我有一个10000*10000的二维数组,但不是用new的方式动态获得的,所以不能用delete释放。但是程序运行到后面之后这个数...
C++中如何释放非动态分配的内存呢?比如我有一个10000*10000的二维数组,但不是用new的方式动态获得的,所以不能用delete释放。但是程序运行到后面之后这个数组又不再需要了,想释放掉,有办法做到吗?
还是说这种问题在编写代码的时候就要用动态内存的方式处理?
求指导,多谢!! 展开
还是说这种问题在编写代码的时候就要用动态内存的方式处理?
求指导,多谢!! 展开
2个回答
展开全部
如果是你自己申请的内存才需要释放。如果是你只是一个局部变量,
比如这样定义的int arr[10000][10000],就不需要释放。系统会自动释放的
比如这样定义的int arr[10000][10000],就不需要释放。系统会自动释放的
更多追问追答
追问
如果要是在main函数中定义的变量呢?比如说这个数组在前半段有用,后半段想删掉来节省内存,能不能做到?
我问这个问题是想和matlab语言比较下,matlab语言可以用《clear 变量名》 的方式来释放内存,不知道C++可不可以,据我所知好像不行。。。。
追答
一句话:如果不是你手动申请的,都不需要你操心。
即使是在main函数中定义的,如果不是你手动申请的,也不需要你操心。会自动释放。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询