Catch a Memory Access Violation in C++
From: https://stackoverflow.com/questions/16612444/catch-a-memory-access-violation-in-c
In C++, is there a standard way (or any other way, for that matter) to catch an exception triggered by a memory access violation?
For example, if something went wrong and the program tried to access something that it wasn't supposed to, how would you get an error message to appear saying "Memory Access Violation!" instead of just terminating the process and not showing the user any information about the crash?
I'm programming a game for Windows using MinGW, if that helps any.
[Answer]
Access violation
is a hardware exception and cannot be caught by a standard try...catch
.
Since the handling of hardware-exception are system specific, any solution to catch it inside the code would also be system specific.
On Unix/Linux you could use a SignalHandler
to do catch the SIGSEGV
signal.
On Windows you could catch these structured exception using the __try/__except
statement.
最新文章
- ZooKeeper简介
- ERROR ITMS-90167: ";No .app bundles found in the package";错误
- LVS集群类型
- 完全背包问题 POJ1384
- SU suwind命令学习
- linux第5天 socket api
- javaweb 学习的好地方
- OO的ALV隐藏工具栏的form
- 具体评论ExpandableListView显示和查询模仿QQ组列表用户信息
- 浅谈并发和tomcat线程数
- Prerequisite check ";CheckActiveFilesAndExecutables"; failed.
- TCP/IP协议栈模型
- 《设计模式之禅》--MVC框架
- 5分钟学习spark streaming之 轻松在浏览器运行和修改Word Counts
- 笔记:MyBatis Mapper XML文件详解 - Cache
- Spring 框架中注释驱动的事件监听器详解
- 帆软报表(finereport)使用row_number ()进行组内排序
- 复习IIC协议---以AT24C02为例
- IT人保护视力的10个有效方法
- SpringBoot 使用 MyBatis 分页插件 PageHelper 进行分页查询