设为首页 - 加入收藏
广告 1000x90
您的当前位置:144177黄大仙有求必应 > 静态存储分配 > 正文

静态指针用NEW分配内存如果不主动删除在程序(进程)结束后会自

来源:未知 编辑:admin 时间:2019-06-26

  静态指针,用NEW分配内存,如果不主动删除,在程序(进程)结束后会自动释放么?

  静态指针,用NEW分配内存,如果不主动删除,在程序(进程)结束后会自动释放么?

  比如:classABC{};staticABC*p=NULL;voidfunc(){p=newABC;....}....在程序退出时,如果没有显示的去调用deletep;那new出来的空间会被释放么?不是说指针,而是指针指定的空间。网上查...

  网上查了,好像又不用意见,而且很多人是在说静态变量本身,而不是它指向的空间,请高手确认一下,谢谢了。

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。

  进程的概念主要有两点:第一,进程是一个实体。每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text region)、数据区域(data region)和堆栈(stack region)。文本区域存储处理器执行的代码;数据区域存储变量和进程执行期间使用的动态分配的内存;堆栈区域存储着活动过程调用的指令和本地变量。第二,进程是一个“执行中的程序”。程序是一个没有生命的实体,只有处理器赋予程序生命时,它才能成为一个活动的实体,我们称其为进程。

  进程是操作系统中最基本、重要的概念。是多道程序系统出现后,为了刻画系统内部出现的动态情况,描述系统内部各道程序的活动规律引进的一个概念,所有多道程序设计操作系统都建立在进程的基础上。

  无论你是怎么分配的,也无论你是分配在堆还是栈上面的,很明显,它都是属于进程的,当程序退出的时候,进程都不存在了,进程所占有的所有资源,操作系统都会收回的,所以你不用担心了

  展开全部楼上所述的只是一个方面,那是程序比较小,运行比较短时,可以采用的。

  但如果你编译的程序要长时间运行,或者数据吞吐量特别大,强烈建议使用delete。一个大程序在运行期间要做自己的内存管理的,往往一些劣质软件,在运行期间占用内存不停的扩大,响应速度也慢慢变缓,主要是内存管理做的不好。

  以后做大软件或者其中的某个模块,肯定需要注意的,因为你的总程序在运行,系统不会随便回收你的没有释放的资源,那样做很危险。

本文链接:http://that-a-way.com/jingtaicunchufenpei/236.html

相关推荐:

网友评论:

栏目分类

现金彩票 联系QQ:24498872301 邮箱:24498872301@qq.com

Copyright © 2002-2011 DEDECMS. 现金彩票 版权所有 Power by DedeCms

Top