Advertisement
Guest User

Untitled

a guest
Dec 13th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.06 KB | None | 0 0
  1. Необходимо реализовать класс тестового редатора TextEditor в файлах TextEditor.h TextEditor.cpp, содержащего текст в виде L2 списка строк:
  2.  
  3. Реализовать класс строки: Line, содержащего строку(std::string) и указатели на следующую и предыдущую строку
  4. С помощью класса Line реализовать L2 список строк, начало и указаталь которого содержится в классе TextEditor. Если текст пустой, то указатель и начало никуда не указывает(NULL)
  5. Реализовать метод void point(int count) который свдвигает указатель на  count шагов по списку. Если отрицательное, то назад, если положительное - вперед. При сдвиге дальше концов списка, ставить в конец списка. 
  6. Реализовать метод void insert(const std:string &lineText) который вставляет строку между указателем и следующей за ней строкой. Указатель смещается на вставленную строку. Если текст пустой, то строка становится просто первой.
  7. Реализовать метод void remove() который удаляет строку по указателю. указатель сдвигается на следующую строку. Если это конец текста, то на предыдщую.
  8. Переопредлеить std::string operator [](int count), который возвращает значение строки на позиции на расстоянии count относительно указателя (Работает так же как и в п.3). Если текст пустой, то вернуть пустую строку.
  9. Переопредлеить operator =(std::string &lineText), который устаналивает значение строки по указателю
  10. Реализовать функцию std::string print() которая возвращает содержание полного текста в редаторе. Строки должны быть разделены переносом строки(\n). В конце теста тоже перенос строки. Если текста нет, то вернуть пустую строку.
  11. Реализовать функцию bool empty() которая возвращает пустой ли текстовый редактор.
  12.  Внимание! Использование STL запрещено, кроме std::string.
  13.  
  14. P.S.
  15.  
  16. Класс std::string содержаится в заголовочном файле
  17.  
  18. P.P.S.
  19.  
  20. Необходимо написать корректный дестурктор, который удаляет все строки.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement