Finished review/fixes of Math and Miscellaneous categories of functions and macros.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Bryan Petty
2008-03-23 18:24:32 +00:00
parent bddd07670f
commit 7fa7088e4c
17 changed files with 665 additions and 494 deletions

View File

@@ -6,37 +6,41 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/** @ingroup group_funcmacro_misc */
//@{
/**
This family of macros is similar to wxON_BLOCK_EXIT()
but calls a method of the given object instead of a free function.
*/
wxON_BLOCK_EXIT_OBJ0(obj, method);
wxON_BLOCK_EXIT_OBJ1(obj, method, p1);
wxON_BLOCK_EXIT_OBJ2(obj, method, p1, p2);
//@}
//@{
/**
This family of macros allows to ensure that the global function @e func
with 0, 1, 2 or more parameters (up to some implementaton-defined limit) is
executed on scope exit, whether due to a normal function return or because an
exception has been thrown. A typical example of its usage:
This macro ensures that the global @a function with 0, 1, 2 or more
parameters (up to some implementaton-defined limit) is executed on scope
exit, whether due to a normal function return or because an exception has
been thrown. A typical example of its usage:
@code
void *buf = malloc(size);
wxON_BLOCK_EXIT1(free, buf);
wxON_BLOCK_EXIT1(free, buf);
@endcode
Please see the original article by Andrei Alexandrescu and Petru Marginean
published in December 2000 issue of C/C++ Users Journal for more
details.
published in December 2000 issue of C/C++ Users Journal for more details.
@see wxON_BLOCK_EXIT_OBJ()
@see wxON_BLOCK_EXIT_OBJ0()
@header{wx/scopeguard.h}
*/
wxON_BLOCK_EXIT0(func);
wxON_BLOCK_EXIT1(func, p1);
wxON_BLOCK_EXIT2(func, p1, p2);
#define wxON_BLOCK_EXIT0(function)
#define wxON_BLOCK_EXIT1(function, p1)
#define wxON_BLOCK_EXIT2(function, p1, p2)
//@}
/** @ingroup group_funcmacro_misc */
//@{
/**
This family of macros is similar to wxON_BLOCK_EXIT0(), but calls a method
of the given object instead of a free function.
@header{wx/scopeguard.h}
*/
#define wxON_BLOCK_EXIT_OBJ0(object, method)
#define wxON_BLOCK_EXIT_OBJ1(object, method, p1)
#define wxON_BLOCK_EXIT_OBJ2(object, method, p1, p2)
//@}