zoukankan      html  css  js  c++  java
  • 关于C++ EH异常---MFC CMemoryException

    MFC里的CMemoryException异常就是表示内存不足的情况。不需要或不可能进一步限定。内存异常由new自动抛出。例如,如果您使用malloc编写自己的内存函数,那么您将负责抛出内存异常。 不要直接使用此构造函数,而是调用全局函数AfxThrowMemoryException。此全局函数在内存不足的情况下可以成功,因为它在先前分配的内存中构造异常对象。

    当我们在dum文件分析时,可以看到如下的异常信息:

    ExceptionAddress: 768c2552 (KERNELBASE!RaiseException+0x00000062)
    ExceptionCode: e06d7363 (C++ EH exception)
    ExceptionFlags: 00000001
    NumberParameters: 3
    Parameter0: 19930520
    Parameter1: 0093cb58
    Parameter2: 69d9bd10
    pExceptionObject: 0093cb58
    _s_ThrowInfo : 69d9bd10
    Type : class CMemoryException *
    Type : class CSimpleException *
    Type : class CException *
    Type : class CObject *
    Type : void *

    此时,我们可以用!address -summary来查看进程内存使用情况在佐证

  • 相关阅读:
    hdu 1253
    poj 2531 Network Saboteur
    rwkj 1501 数据结构:图的DFS遍历
    rwkj 1306 素数========拓展
    nyist 91 阶乘之和
    nyist 65 另一种阶乘问题
    nyist 31 5个数求最值
    nyist 22 素数求和
    向量 vector
    字符串 统计 ,删除,连接,变换
  • 原文地址:https://www.cnblogs.com/yilang/p/13224807.html
Copyright © 2011-2022 走看看