]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/array.tex
Some doc corrections
[wxWidgets.git] / docs / latex / wx / array.tex
index aa07dce168e95fe55b6d1b31f89a3a57b2ac729a..e814dfad1e1468c20b4bb9a5b89811c2893a3fa8 100644 (file)
@@ -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