社区
C++ 语言
帖子详情
请问这样的函数使用起来会不会发生内存泄露?
sean1103
2006-06-28 11:23:47
我定义了这样一个字符处理函数,最后需要通过指针返回结果:
char* MyClass::ProcessChar(char * mystring)
{
......
char* temp = new char[256];
......
return temp;
}
因为在函数中有堆申请new,给指针temp,然后又把它返回,没有delete temp。调用后会不会就会发生内存泄露呢?
...全文
221
10
打赏
收藏
请问这样的函数使用起来会不会发生内存泄露?
我定义了这样一个字符处理函数,最后需要通过指针返回结果: char* MyClass::ProcessChar(char * mystring) { ...... char* temp = new char[256]; ...... return temp; } 因为在函数中有堆申请new,给指针temp,然后又把它返回,没有delete temp。调用后会不会就会发生内存泄露呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
云梦谭
2006-06-28
打赏
举报
回复
不一定的。方法里新开辟的内存传出,调用点之后要回收就行了。
crazy_lazy_pig
2006-06-28
打赏
举报
回复
不一定会的, 应该说非常容易发生内存泄漏. 你在调用后, 记得适时的delete就行了.
sharkoasis
2006-06-28
打赏
举报
回复
会的!
oowgsoo
2006-06-28
打赏
举报
回复
内存管理的原则应该是谁申请谁释放,象你的这种实现就违反了这个基本原则,当然如果客户端也遵循你的原则每次都负责释放是不会有内存泄漏的,但是你能保证每个客户端都能这么处理吗?特别是新来的同事,这种做法就是给自己找事:)
cmoring
2006-06-28
打赏
举报
回复
看看C库里面的函数声明就知道了。
char *strcpy( char *strDestination, const char *strSource );
不推荐使用楼主的做法.
一般是用传递进来的指针保存进行操作返回。
DeadWolf
2006-06-28
打赏
举报
回复
要看用你这个函数的认知不知道要释放
这样做确实不好
bird1982
2006-06-28
打赏
举报
回复
不一定会出现问题,如果你是在一个线程里面做这些事情,做完这个线程自己死掉,那么内存自己就会OVER了,但最好推荐不要按照上面的方法去做,Windows下,这么做10有8,9得泄露
meicaikourou
2006-06-28
打赏
举报
回复
这不是一种方法,应该传递进来指针保存返回值。
跨级释放往往导致错误
0黄瓜0
2006-06-28
打赏
举报
回复
通常不应该把new和delete放在不同的域中。使用你设计的函数的人不知道你在函数中申请了内存,自然不会释放返回的堆内存而导致内存泄露
pottichu
2006-06-28
打赏
举报
回复
你调用该函数以后,记得释放内存就不会泄露了。
只能说这是个不好的设计。
匿名内部类/Lambda Java和Kotlin谁
会
导致内存泄漏?
何为内存泄漏?Android 常见内存泄漏场景Java匿名内部类
会
导致泄漏吗?Java的Lambda是否
会
泄漏?Kotlin匿名内部类
会
导致泄漏吗?Kotlin的Lambda是否
会
泄漏?Kotlin高阶
函数
的
会
泄漏吗?内存泄漏总结将
函数
类型当做...
C/C++什么是
内存泄露
,
内存泄露
如何避免?
C/C++什么是
内存泄露
,
内存泄露
如何避免?1. 内存溢出2. 内存泄漏3. 造成
内存泄露
常见的三种情况3.1 指针重新赋值3.2 错误的内存释放3.3 返回值的不正确处理4. 如何避免
内存泄露
?5.
内存泄露
检测工具valgrind 1. ...
什么是内存泄漏?
内存泄漏是什么? 与几种常见情况。存在危害 内存泄漏 和 内存溢出 解决方案 检测内存泄漏常用的检测工具 如何避免内存泄漏?
一文掌握C/C++内存泄漏,防止内存泄漏以及检测工具!
???? 作者:Linux猿 ???? 简介:CSDN博客专家?...,C/C++、面试、刷题、算法尽管咨询我,关注我,有...在写 C/C++ 代码的时候,经常需要为程序分配动态内存,难免就
会
发生
内存泄漏的情况,本文就来说一下如何防止 C/C++
什么是内存泄漏?什么是野指针?什么是内存越界?如何避免?
内存泄漏 百度百科上的定义:内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。 一看定义,坑好像更多...
C++ 语言
64,676
社区成员
250,490
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章