added WX_CLEAR_ARRAY() macro to delete all the elements of an array

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 1998-12-29 16:54:48 +00:00
parent 0b746ba805
commit 2b9bd418c5

View File

@ -411,5 +411,23 @@ WX_DEFINE_ARRAY(void *, wxArrayPtrVoid);
#undef WXDLLEXPORTLOCAL
#define WXDLLEXPORTLOCAL
// -----------------------------------------------------------------------------
// convinience macros
// -----------------------------------------------------------------------------
// delete all array elements
//
// NB: the class declaration of the array elements must be visible from the
// place where you use this macro, otherwise the proper destructor may not
// be called (a decent compiler should give a warning about it, but don't
// count on it)!
#define WX_CLEAR_ARRAY(array) \
{ \
size_t count = array.Count(); \
for ( size_t n = 0; n < count; n++ ) \
{ \
delete array[n]; \
} \
}
#endif // _DYNARRAY_H