Skip to content

mishamarkov15/MyString

Repository files navigation

MyString

String позволяет удобно работать со строками на языке c++. Класс оптимизирован по памяти и по скорости работы.

Конструкторы

  1. String () - создаёт пустую строку.
  2. String (const char sym) - создаёт строку из символа sym.
  3. String (const char *) - создаёт строку из массива char.
  4. String (unsigned long n, const char sym) - создаёт строку из n символов sym.
  5. String (const String &other) - конструктор копирования. Создаёт строку из строки other.

Перегруженные бинарные операторы

  1. operator= (const String &) - оператор присваивания.
  2. operator+= (const String &) - оператор скоращённого сложения со строкой.
  3. operator+ (const String &a, const String &b) - оператор сложения.
  4. operator+= (const char sym) - оператор сокращённого сложения с символом.
  5. operator+ (const String &, const char) - оператор сложения с символом.
  6. operator[] (unsigned long index) - обращение к элементам строки по индексу.
  7. operator<< (std::ostream &, const String &) - вывод в поток.
  8. operator>> (std::istream &, String &) - ввод из потока.

Различные методы, преобразовывающие строку

  1. clear () - делает строку пустой.
  2. push_back (const char sym) - добавить символ sym в конец строки.
  3. pop_back () - убирает символ из конца строки и возвращает его.
  4. front () - возвращает ссылку на элемент, стоящий в самом начале строки, позволяя изменить его.
  5. back () - возвращает ссылку на элемент, стоящий в самом конце строки, позволяя изменить его.

Различные методы, не изменяющие строку

  1. empty () - проверяет пустая ли строка.
  2. find (const String &dest) - находит самое левое вхождение dest в строке, если dest не была найдена, то возвращает длину строки.
  3. rfind (const String &dest) - находит самое правое вхождение dest в строке, если dest не была найдена, то возвражает длину строки.
  4. length () - возвращает длину строки.
  5. capacity () - возвращает количество символов, под которыые выделена память.