none
CButtonSt类的使用 RRS feed

  • 问题

  • 大家好:

    初学MFC下编程,在使用CButtonSt类编辑按钮时遇到了DEBUG运行错误的问题,搜索大量,不能解决,特此来请教!

    说明:编辑环境vs2008,编译可通过。

    错误:DEBUG ASSERTION FAILED!

     

    • 已移动 Andrew.Wu 2011年4月22日 5:24 (发件人:Visual Studio 相关讨论(Visual Studio 2010以前版本))
    2011年4月21日 6:48

答案

  • Debug下调试,Call stack看看函数调用堆栈,先找到出错的地方


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.
    2011年4月22日 5:33
    版主
  • 你好,

     

    出现“Debug Assertion Failed错误”是因为你程序中的断言失败了,例如  ASSERT(pActivateView == this);

    AssertSystem.Diagnostics.Debug类的一个静态方法,只在debug的状态下起作用,如果程序是编译成release的,那么该代码会被忽略。

    Assert的作用是检查输入条件(也就是该方法的参数)是否是“True"如果是什么都不会发生,如果是“False”则会抛出异常。

     

    你可以在你有报错前的地方设置一个断点,然后在单步调试,以查看所需要断言的变量。通过断言失败可能是因为传入了一个空指针,空句柄

     

    我们期待你的回复,并乐意为你解决你的问题


    Rob Pan [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    2011年5月3日 9:37

全部回复

  • Debug下调试,Call stack看看函数调用堆栈,先找到出错的地方


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.
    2011年4月22日 5:33
    版主
  • 你好,

     

    出现“Debug Assertion Failed错误”是因为你程序中的断言失败了,例如  ASSERT(pActivateView == this);

    AssertSystem.Diagnostics.Debug类的一个静态方法,只在debug的状态下起作用,如果程序是编译成release的,那么该代码会被忽略。

    Assert的作用是检查输入条件(也就是该方法的参数)是否是“True"如果是什么都不会发生,如果是“False”则会抛出异常。

     

    你可以在你有报错前的地方设置一个断点,然后在单步调试,以查看所需要断言的变量。通过断言失败可能是因为传入了一个空指针,空句柄

     

    我们期待你的回复,并乐意为你解决你的问题


    Rob Pan [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    2011年5月3日 9:37