]> git.saurik.com Git - wxWidgets.git/blame - docs/doxygen/groups/funcmacro_debug.h
Use API_VERSION_NUMBER for debug help API version check.
[wxWidgets.git] / docs / doxygen / groups / funcmacro_debug.h
CommitLineData
dae2800a
BP
1/////////////////////////////////////////////////////////////////////////////
2// Name: funcmacro_debug.h
3// Purpose: Debugging function and macro group docs
4// Author: wxWidgets team
5// RCS-ID: $Id: funcmacro_gdi.h 52454 2008-03-12 19:08:48Z BP $
526954c5 6// Licence: wxWindows licence
dae2800a
BP
7/////////////////////////////////////////////////////////////////////////////
8
9/**
10
7d9550df 11@defgroup group_funcmacro_debug Debugging macros
dae2800a
BP
12@ingroup group_funcmacro
13
14Useful macros and functions for error checking and defensive programming.
34f5c105
VZ
15
16Starting with wxWidgets 2.9.1, debugging support in wxWidgets is always
17compiled in by default, you need to explicitly define ::wxDEBUG_LEVEL as 0 to
18disable it completely. However, by default debugging macros are dormant in the
19release builds, i.e. when the main program is compiled with the standard @c
20NDEBUG symbol being defined. You may explicitly activate the debugging checks
21in the release build by calling wxSetAssertHandler() with a custom function if
22needed.
23
24When debugging support is active, failure of both wxASSERT() and wxCHECK()
25macros conditions result in a debug alert. When debugging support is inactive
26or turned off entirely at compilation time, wxASSERT() and wxFAIL() macros
27don't do anything while wxCHECK() still checks its condition and returns if it
28fails, even if no alerts are shown to the user.
29
30Finally, the compile time assertions don't happen during the run-time but
31result in the compilation error messages if the condition they check fail.
32They are always enabled and are not affected by ::wxDEBUG_LEVEL.
dae2800a 33
dbbca9fd
FM
34Related class group: @ref group_class_debugging.
35
dae2800a
BP
36*/
37