怎样知道一块内存没有被使用

比如我申请一块内存 int * p = new int[100] ; 假设程序复杂,这块内存可能被别的某个东西使用。
为了回收内存,当没有被使用的时候我要把这块内存释放掉,这个时候怎样确定该内存没有被使用?
全部评论
不知道前面4位都在扯什么JB蛋。 如果是你new出来,然后你给别人用,你就要提供释放的API,让用的人释放;如果他不是释放是他的问题。 如果是你new出来,然后你自己使用,那么你就用完了释放。 还有扯什么自己写类,还扯什么编译器?
点赞 回复
分享
发布于 2017-12-05 12:36
没办法,。
点赞 回复
分享
发布于 2017-12-05 01:25
联易融
校招火热招聘中
官网直投
写一个类来保管这个空间。其中类有一个指针变量,保存的是这个堆的地址。然后再加一个变量,按你的要求可以是一个布尔值,如果有被占用则置为true。其实跟智能指针一个道理。你可以去看看sharedptr的实现
点赞 回复
分享
发布于 2017-12-05 01:54
内置类型管什么delete,确定内存有没有被使用可以用CRT的内存检测函数。
点赞 回复
分享
发布于 2017-12-05 11:27
内存的管理很大程度上取决于编译器的实现。没啥好办法
点赞 回复
分享
发布于 2017-12-05 11:43
这不是垃圾回收的机制吗,引用计数?
点赞 回复
分享
发布于 2017-12-05 23:09

相关推荐

点赞 评论 收藏
转发
头像
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务