RUS  ENG
Полная версия
ЖУРНАЛЫ // Вестник Санкт-Петербургского университета. Серия 10. Прикладная математика. Информатика. Процессы управления // Архив

Вестн. С.-Петербург. ун-та. Сер. 10. Прикл. матем. Информ. Проц. упр., 2015, выпуск 2, страницы 134–149 (Mi vspui249)

Эта публикация цитируется в 1 статье

Информатика

Применение подстроки в реализации быстродействующей строковой системы на C++

М. Ю. Орехов

Санкт-Петербургский государственный университет, Российская Федерация, 199034, Санкт-Петербург, Университетская наб., 7/9

Аннотация: Малое время выполнения операций сравнения и копирования строк является необходимым условием разработки приложений, быстродействие которых определяется скоростью синтаксического анализа и генерации текстовых файлов значительного объема. В качестве примера подобного приложения в статье рассмотрена графическая система визуализации, предназначенная для создания, редактирования, обработки и воспроизведения в реальном времени векторных графических схем открытого текстового формата, перечислены ее функциональные возможности, реализуемые при наличии надежной быстродействующей строковой системы. Предложен подход к проектированию ASCII строковой системы, основанный на широком использовании подстроки как универсального аргумента ее функций, который делает возможным реализацию операций сравнения и копирования строк, быстрых настолько, насколько позволяют низкоуровневые средства стандартной библиотеки C++, в том числе за счет значительного снижения числа обращений к динамической памяти. Определены классы «подстрока» и «строка». Описаны их ключевые свойства и методы. Приведено обоснование выбора низкоуровневой функции сравнения подстрок. Отмечены особенности настройки применения встроенных функций компилятора при разработке строковой системы. Представлен результат оценки быстродействия спроектированного строкового типа в соотнесении с аналогами, предлагаемыми разработчиками библиотек STL и Qt. Библиогр. 3 назв. Ил. 3.

Ключевые слова: строковый тип, обработка строк, сравнение строк, синтаксический анализ, парсер.

УДК: 519.68

Поступила: 17 февраля 2014 г.



Реферативные базы данных:


© МИАН, 2024