调用函数中手动分配的内存,如何在主函数中删除
来源:互联网 发布:淘宝返利网最高返36 编辑:程序博客网 时间:2024/06/06 06:43
/********************************************************************************
在调用函数中手动分配的内存,如何在主函数中删除,保证没有内存泄露!
********************************************************************************/
/******************************错误的情况*************************************/
void fun( int *(&p), int num )
{
p = new int[num]( );
...................;
}
int main( )
{
int *q, num;
fun( q, num );
delete []q;//会报错
}
/******************************方法(一)*************************************/
int* fun( int num )
{
int *p = new int[num]( );
...................;
return p;
}
int main( )
{
int *q, num;
q = fun( num );
delete []q;//正常删除调用函数中分配的内存
}
/******************************方法(二)*************************************/
void fun( int **p, int num )
{
*p = new int[num]( );
...................;//对*(*p + X )操作
}
int main( )
{
int *q, num;
fun( &q, num );//注意此处是&q,不是q
delete []q;//正常删除调用函数中分配的内存
}
在调用函数中手动分配的内存,如何在主函数中删除,保证没有内存泄露!
********************************************************************************/
/******************************错误的情况*************************************/
void fun( int *(&p), int num )
{
p = new int[num]( );
...................;
}
int main( )
{
int *q, num;
fun( q, num );
delete []q;//会报错
}
/******************************方法(一)*************************************/
int* fun( int num )
{
int *p = new int[num]( );
...................;
return p;
}
int main( )
{
int *q, num;
q = fun( num );
delete []q;//正常删除调用函数中分配的内存
}
/******************************方法(二)*************************************/
void fun( int **p, int num )
{
*p = new int[num]( );
...................;//对*(*p + X )操作
}
int main( )
{
int *q, num;
fun( &q, num );//注意此处是&q,不是q
delete []q;//正常删除调用函数中分配的内存
}
0 0
- 调用函数中手动分配的内存,如何在主函数中删除
- 在函数调用/子函数中进行动态内存的分配
- C++中函数调用中的内存分配
- C++中函数调用中的内存分配
- new在局部函数中分配的动态内存
- 【C++内存管理】浅析C++中函数调用时的内存分配-函数局部变量的内存分配
- 一级指针,二级指针在函数调用传址问题。在子函数中分配内存。
- 函数中分配内存的问题
- 函数中分配内存的问题-zz
- 函数中分配内存的问题
- 函数中分配内存的问题
- C语言中分配内存的函数
- C++中内存分配、函数调用和返回值
- C++中内存分配、函数调用和返回值问题
- C++中内存分配、函数调用和返回值问题
- C++中内存分配、函数调用和返回值问题
- C++中内存分配、函数调用和返回值问题
- C++中内存分配、函数调用和返回值问题
- 单词缩写
- 插拔SD卡对SD中的应用桌面快捷方式影响流程分析
- Java Servlet 中文API说明
- VBS基础篇 - 变量(6) - 数组变量
- 把以前写的几个Linux Framebuffer小工具放到github上了,直接去下吧,别找我要了
- 调用函数中手动分配的内存,如何在主函数中删除
- 继承子父类初始化及访问子父类方法及字段等问题
- 程序员生存定律--目录
- JavaScript--获取键盘控制事件
- fiddler的基本使用
- d3js做的星条图+源码。
- ubuntu14.04 安装中文输入法
- 图片批量转换成pdf
- 软件文档编写向导