Шаг 24.
Библиотека STL.
Обзор функций-членов класса string. Основные манипуляции над строками

    На этом шаге мы рассмотрим основные функции-члены класса string.

    Чтобы присвоить одну строку другой, используется функция assign(). Два возможных формата ее реализации выглядят следующим образом.

   string &assign(const string &strob, size_type start, size_type num);
   string &assign(const char *str, size_type num);

    Первый формат позволяет присвоить вызывающему объекту num символов из строки, заданной параметром strob, начиная с индекса start. При использовании второго формата вызывающему объекту присваивается первые num символов строки с завершающим нулем, заданной параметром str. В каждом случае возвращается ссылка на вызывающий объект.

    С помощью функции-члена append() можно часть одной строки присоединить в конец другой. Два возможных формата ее реализации имеют следующий вид.

   string &append (const string &strob, size_type start, size_type num);
   string &append (const char *str, size_type num);

    Здесь при использовании первого формата num символов из строки, заданной параметром strob, начиная с индекса start, будет присоединено в конец вызывающего объекта. Второй формат позволяет присоединить в конец вызывающего объекта первые num символов из строки с завершающим нулем, заданной параметром str. В каждом случае возвращается ссылка на вызывающий объект.

    Вставку и замену символов в строке можно выполнять с помощью функций-членов insert() и replace(). Вот как выглядят прототипы их наиболее употребительных форматов.

   string &insert (size_type start, const string &strob);
   string &insert (size_type start, const string &strob,
                        size_type insStart, size_type num);
   string &replace (size_type start, size_type num,
                           const string &strob);
   string &replace (size_type start, size_type orgNum,
		     const string &strob,
                            size_type replaceStart,
                            size_type replaceNum);

    Первый формат функции insert() позволяет вставить строку, заданную параметром strob, в позицию вызывающей строки, заданную параметром start. Второй формат функции insert() предназначен для вставки num символов из строки, заданной параметром strob, начиная с индекса insStart, в позицию вызывающей строки, заданную параметром start.

    Первый формат функции replace() служит для замены num символов в вызывающей строке, начиная с индекса start, строкой, заданной параметром strob. Второй формат позволяет заменить orgNum символов в вызывающей строке, начиная с индекса start, replaceNum символами строки, заданной параметром strob, начиная с индекса replaceStart. В каждом случае возвращается ссылка на вызывающий объект.

    Удалить символы из строки можно с помощью функции erase(). Один из ее форматов выглядит так:

   string &erase (size_type start = 0, size_type num = npos);

    Эта функция удаляет num символов из вызывающей строки, начиная с индекса start. Функция возвращает ссылку на вызывающий объект.

    На следующем шаге мы рассмотрим использование некоторых из перечисленных методов.




Предыдущий шаг Содержание Следующий шаг