Читать «Полный справочник по С++» онлайн - страница 426

Герберт Шилдт

Честно говоря, библиотека локализации крайне велика и сложна. Ее описание выходит за рамки нашей книги. Хотя большинство программистов не применяют библиотек локализации непосредственно, тот специалист, который занимается международными проектами, должен внимательно изучить ее особенности.

Ш Прочие классы

В стандартной библиотеке языка C++ определены еще несколько довольно интересных классов.

Класс Описание

type_info Используется в сочетании с оператором typeid, описанным в гла

ве 22. Использует заголовок <typeinfo>.

numeric_limits Инкапсулирует пределы изменения чисел. Использует заголовок

<limits>.

raw_storage_iterator Инкапсулирует средства распределения неинициализированной памяти. Использует заголовок <memory>.

Полный справочник по

Часть V

Приложения на языке C++

В этой части книги рассматриваются два простых приложения. Преследуется двоякая цель: во-первых, приведенные примеры иллюстрируют преимущества объектно-ориентированного программирования, а во-вторых, они демонстрируют, как с помощью языка C++ можно решить две совершенно разные задачи.

Полный справочник по

Глава 39

Интеграция новых классов: пользовательский класс для работы со строками

U этой главе описывается процесс разработки и реализации небольшого класса, обеспечивающего работу со строками. Как известно, стандарт языка C++ содержит полноценный мощный класс для работы со строками под названием Ьа-sic_string. Цель этой главы заключается не в разработке альтернативного класса. На конкретном примере мы стремимся дать читателю ясное представление о разработке и интеграции новых типов данных. Создание класса для работы со строками является весьма ярким примером. В прошлом многие программисты оттачивали мастерство, создавая свои собственные строковые классы. В этой главе мы займемся тем же.

Хотя класс, который мы будем разрабатывать, намного проще стандартного, у нас будет одно преимущество: мы с самого начала можем полностью контролировать процесс ^реализации строки и манипуляции ими. В некоторых ситуациях это может оказаться полезным. В конце концов, это просто интересно!

Н Класс StrType

Наш класс намного проще стандартного. Разумеется, он не настолько велик и сложен. Перечислим требования, которым должен соответствовать наш класс.

• Строки должны присваиваться с помощью оператора присваивания.

• Строковым объектам необходимо присваивать как строковые объекты, так и строки, заключенные в кавычки.

• Конкатенация двух строк должна осуществляться с помощью оператора

• Удаление подстроки должно осуществляться с помощью оператора

• Сравнение строк должно выполняться с помощью операторов сравнения.