社区
C++ Builder
帖子详情
如何解决野指针的问题
_Blue
2003-08-22 01:27:23
在一个Frame里有一个函数,该函数想实现释放掉这个Frame,但是调用this->Free()或者delete this之后,虽然该实例被释放了,但是指针仍然指向垃圾内存,如何在Frame里令该指针指向NULL;
...全文
182
8
打赏
收藏
如何解决野指针的问题
在一个Frame里有一个函数,该函数想实现释放掉这个Frame,但是调用this->Free()或者delete this之后,虽然该实例被释放了,但是指针仍然指向垃圾内存,如何在Frame里令该指针指向NULL;
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yesry
2003-08-22
打赏
举报
回复
局部变量frm=NULL;在函数返回后不再有用,那又有什么意思?
dongyangzong
2003-08-22
打赏
举报
回复
c++的指针delete后,指针的值是不会自动为NULL的.应该在delete之后写 frm = NULL;
yesry
2003-08-22
打赏
举报
回复
也许是这样的
TFrame **frm;
frm=new (TFrame *)[3];
frm[0]=new ...
...
delete[]frm;
to Aweay
delete this;//这样比较干净利索,何必脱裤子放屁?
Iamsnowgirl
2003-08-22
打赏
举报
回复
不明白什么意思,释放了,怎么还有指针
思危
2003-08-22
打赏
举报
回复
用完了复位
frm = NULL;
Siney
2003-08-22
打赏
举报
回复
TFrame *frm=this;
delete frm;
frm=NULL;
_Blue
2003-08-22
打赏
举报
回复
可以这么说,因为这个Frame是这样生成的
TFrame1 *frm = new TFrame1(this);
...
...
frm->show();
nuaacims
2003-08-22
打赏
举报
回复
?
不是很理解你的意思...
如果你都已经释放了这个实例了,“但是指针仍然指向垃圾内存”? 你说的是哪个指针?this 指针吗?
C++中的
野指针
问题
文章目录 1 C和C++中的
野指针
问题
1.1
野指针
的概念 1.2
野指针
的由来 1.3 杜绝
野指针
的基本原则 2 C和C++中的常见内存错误 2.1 常见内存错误 2.2 内存操作的基本规则 1 C和C++中的
野指针
问题
1.1
野指针
的概念
野指针
的概念: 指针变量中的值是非法的内存地址,进而形成
野指针
。
野指针
不是NULL指针,是指向不可用内存地址的指针。 NULL指针并无危害,很好判断,也很好调试。 C语言中无法判断一个指针所保存的地址是否合法。 1.2
野指针
的由来 如下情况可能导致
野指针
的出
野指针
产生原因和
解决
方法
野指针
是指指向无效内存地址的指针。它会导致程序崩溃或引发未定义的行为。
野指针
产生的原因可能是: 释放了指针所指向的内存,但没有将指针设置为空。 指针超出了数组的边界。 未初始化的指针。
解决
野指针
的方法包括: 在释放内存后,将指针设置为空。 检查指针是否超出了数组的边界。 对指针进行正确的初始化。 使用静态分析或动态调试工具来检测和修复错误。 ...
C++中的
野指针
和内存泄漏
问题
文章目录
野指针
问题
什么是
野指针
野指针
问题
成因内存泄漏智能指针
野指针
问题
什么是
野指针
在c++中,使用指针是需要解引用去访问一块内存地址的。当一个指针变量指向的地址是非法地址时,就会出现
野指针
问题
。一般我们在写代码的时候,会对指针变量有一个判空处理,但是对于
野指针
时,是不会被 ‘ ptr == nullptr ’ 中识别出来的。会导致在接下来的代码逻辑中,造成非法访问,异常,导致进程崩溃退出等等的
问题
。
野指针
问题
成因
野指针
问题
也是一个在实际代码工作中很常见的一个
问题
,也会不同的情况导致
野指针
问题
出现:
c++开发如何避免和
解决
野指针
和内存泄漏
问题
https://www.cr173.com/html/18707_1.html 尽管C++
野指针
和内存泄漏一直被诟病,但是在实时性很强的应用场合,c++ 仍然是不二之选。游戏服务器开发仍然使用c++ 作为主语言,但是大多结合动态脚本技术,一方面规避了
野指针
和内存泄露,一方面获得了开发效率和扩展性的红利。今天主要说说在使用c++过程中,如何避免和
解决
野指针
和内存泄漏
问题
。
野指针
:
野指针
的出现会导致程序崩溃,这是每个人都不愿意看到的。Linux会生成coredump文件,可用gdb分析。Win下.
野指针
问题
与
解决
野指针
:指向不确定地址的指针变量。(即没有初始化)使用
野指针
易因内存泄露出现段错误。而造成内存泄露的原因有两个: 1.访问了没有权限的内存(平时我们正确使用指针的时候,系统应经将相应的内存分配给用户,但是如果指向没有分配的内存,系统会判定我们没有权限) 2.访问了已经释放了的内存。 因为
野指针
主要是因为我们平时编程习惯造成的,因此我们只能避免
野指针
的出现,而不能杜绝。
C++ Builder
13,826
社区成员
102,678
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章