X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2abb9d2f1716177aa6c0ce0fd6a2519580dc12af..d3e78bab3ea46183c22a5f0484b931a99b897636:/docs/latex/wx/array.tex diff --git a/docs/latex/wx/array.tex b/docs/latex/wx/array.tex index aa07dce168..e814dfad1e 100644 --- a/docs/latex/wx/array.tex +++ b/docs/latex/wx/array.tex @@ -117,10 +117,14 @@ Things are much simpler for wxArray and wxSortedArray however: it is enough just to write \begin{verbatim} -WX_DEFINE_ARRAY(MyDirectory *, ArrayOfDirectories); -WX_DEFINE_SORTED_ARRAY(MyFile *, ArrayOfFiles); +WX_DEFINE_ARRAY(int, ArrayOfDirectories); +WX_DEFINE_SORTED_ARRAY(int, ArrayOfFiles); \end{verbatim} +i.e. there is only one {\tt DEFINE} macro and no need for separate +{\tt DECLARE} one. + + \wxheading{See also:} \helpref{Container classes overview}{wxcontaineroverview}, \helpref{wxList}{wxlist} @@ -152,6 +156,17 @@ WX\_DEFINE\_OBJARRAY macro. \helpref{WX\_DEFINE\_EXPORTED\_OBJARRAY}{wxdefineobjarray}\\ \helpref{WX\_DEFINE\_USER\_EXPORTED\_OBJARRAY}{wxdefineobjarray} +To slightly complicate the matters even further, the operator $->$ defined by +default for the array iterators by these macros only makes sense if the array +element type is not a pointer itself and, although it still works, this +provokes warnings from some compilers and to avoid them you should use the +{\tt \_PTR} versions of the macros above. For example, to define an array of +pointers to {\tt double} you should use + +\begin{verbatim} +WX_DEFINE_ARRAY_PTR(double *, MyArrayOfDoublePointers); +\end{verbatim} + \membersection{Constructors and destructors} Array classes are 100\% C++ objects and as such they have the appropriate copy @@ -308,7 +323,7 @@ Example: \begin{verbatim} class MyClass; -WX_DEFINE_OBJARRAY(MyClass, wxArrayOfMyClass); // note: not "MyClass *"! +WX_DECLARE_OBJARRAY(MyClass, wxArrayOfMyClass); // note: not "MyClass *"! \end{verbatim} You must use \helpref{WX\_DEFINE\_OBJARRAY()}{wxdefineobjarray} macro to define