diff options
1 files changed, 17 insertions, 1 deletions
| -rw-r--r-- | src/Generic/String/String.h | 18 |
diff --git a/src/Generic/String/String.h b/src/Generic/String/String.h index 6a8b014..84fbe9c 100644 --- a/src/Generic/String/String.h +++ b/src/Generic/String/String.h @@ -1,6 +1,10 @@ #ifndef HEADER_STRING #define HEADER_STRING +/*! \file String.h + * \brief Stores declaration of class String + */ + #include <istream> #include <ostream> @@ -12,12 +16,20 @@ class String { void copyFrom(const String& other); public: + //! The underlying array is allocated with length (+ 1) size String(unsigned length); + //! Copies str String(const char* str); + //! Returns internal C-style string const char* get_cstr() const; + //! Returns number of characters in string unsigned get_length() const; + //! Returns a character reference (from the underlying C-style string) at the given index + char& operator[](unsigned index); + //! Appends a C-style string String& operator+=(const char* str); + //! Appends a number String& operator+=(unsigned number); String(); @@ -28,12 +40,16 @@ public: String(String&& other); String& operator=(String&& other); + //! Reads String from stream void read(std::istream& istr); + //! Writes String to stream void write(std::ostream& ostr) const; + //! Compares two strings int compare(const String& other) const; - char& operator[](unsigned index); + //! Reads String from stream with >> operator friend std::istream& operator>>(std::istream& istr, String& event); + //! Writes String to stream with << operator friend std::ostream& operator<<(std::ostream& ostr, const String& event); }; |
