Шрифт:
и
Дело в том, что, для того, чтобы написать эти инструкции, нам на самом деле не обязательно знать, какие именно типы называются
В стандарте класс
Таким образом, можно писать код, не беспокоясь о том, что он использует: класс
20.6. Пример: простой текстовый редактор
Какие операции? Допустим, документ будет храниться в основной памяти компьютера. Следовательно, можно выбрать любое удобное представление и просто превратить его в поток байтов, которые мы хотим хранить в файле. Аналогично, мы можем читать поток байтов из файла и превращать их в соответствующее представление в памяти компьютера. Решив этот вопрос, можем сконцентрироваться на выборе подходящего представления документа в памяти компьютера. По существу, это представление должно хорошо поддерживать пять операций.
• Создание документа из потока байтов, поступающих из потока ввода.
• Вставка одного или нескольких символов.
• Удаление одного или нескольких символов.
• Поиск строки.
• Генерирование потока байтов для вывода в файл или на экран.
В качестве простейшего представления можно выбрать класс
This is he start of a very long document.
There are lots of ...
Мы могли бы добавить недостающий символ t и получить следующий текст:
This is the start of a very long document.
There are lots of ...
Однако, если бы эти символы хранились в отдельном объекте класса