Класс string

   
На этом шаге мы приведем общие сведения о классе string.

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

   
В действительности класс string представляет собой специализацию более общего шаблонного класса
basic_string. Существует две специализации типа basic_string:

  • тип string, который поддерживает 8-битовые символьные строки, и
  • тип wstring, который поддерживает строки, образованные двухбайтовыми символами.

   
Существует три причины для включения в C++ стандартного класса string:

  • непротиворечивость данных (строка определяется самостоятельным типом данных),
  • удобство (программист может использовать стандартные С++ операторы) и
  • безопасность (границы массивов отныне не будут нарушаться).

   
Для использования строковых классов C++ необходимо включить в программу заголовок <string>.

   
Прототипы трех самых распространенных конструкторов класса string имеют следующий вид.

   string();
   string(const char *str);
   string(const string &str);

   
Первая форма конструктора создает пустой объект класса string. Вторая форма создает string-объект
из строки с завершающим нулем, адресуемой параметром str. Эта форма конструктора обеспечивает
преобразование из строки с завершающим нулем в объект типа string. Третья создает string-объект из
другого string-объекта.

   
Для объектов класса string определены следующие операторы.

Таблица 1. Операторы класса string

Оператор Описание
= Присваивание
+ Конкатенация
+= Присваивание с конкатенацией
== Равенство
!= Неравенство
< Меньше
<= Меньше или равно
> Больше
>= Больше или равно
[] Индексация
<< Вывод
>> Ввод

   
Эти операторы позволяют использовать объекты типа string в обычных выражениях и избавляют программиста
от необходимости вызывать такие функции, как strcpy() или strcat(). В общем случае в выражениях
можно смешивать string-объекты и строки с завершающим нулем. Оператор "+" можно использовать для
конкатенации одного string-объекта с другим или string-объекта со строкой, созданной в C-стиле.

   
На следующем шаге мы рассмотрим пример программы обработки строк.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий