X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ed7174bafef77f3e99c5d47976f6ba1365960866..35c9d9582be4ebea40251378e95fdbbfe6b8ce73:/include/wx/string.h diff --git a/include/wx/string.h b/include/wx/string.h index f90164c885..aaf3d9f553 100644 --- a/include/wx/string.h +++ b/include/wx/string.h @@ -257,14 +257,23 @@ public: size_t Len() const { return GetStringData()->nDataLength; } /// string contains any characters? bool IsEmpty() const { return Len() == 0; } - /// reinitialize string (and free memory) + /// empty string contents void Empty() { if ( !IsEmpty() ) Reinit(); + // should be empty wxASSERT( GetStringData()->nDataLength == 0 ); - wxASSERT( GetStringData()->nAllocLength == 0 ); + } + /// empty the string and free memory + void Clear() + { + if ( !GetStringData()->IsEmpty() ) + Reinit(); + + wxASSERT( GetStringData()->nDataLength == 0 ); // should be empty + wxASSERT( GetStringData()->nAllocLength == 0 ); // and not own any memory } /// Is an ascii value @@ -372,6 +381,16 @@ public: //@} //@} + /** @name stream-like functions */ + //@{ + /// insert an int into string + wxString& operator<<(int i); + /// insert a float into string + wxString& operator<<(float f); + /// insert a double into string + wxString& operator<<(double d); + //@} + /** @name string comparison */ //@{ /** @@ -686,7 +705,7 @@ public: size_t find(char ch, size_t nStart = 0) const; // wxWin compatibility - inline bool Contains(const wxString& str) { return Find(str) != -1; } + inline bool Contains(const wxString& str) const { return Find(str) != -1; } //@} @@ -937,7 +956,7 @@ wxString WXDLLEXPORT operator+(const char *psz, const wxString& string); # endif #endif -istream& WXDLLEXPORT operator>>(istream& is, wxString& str); +WXDLLEXPORT istream& operator>>(istream& is, wxString& str); #endif //std::string compatibility