Шаг 25.
Библиотека STL.
Обзор функций-членов класса string. Методы inset(), erase(), replace()

    На этом шаге мы приведем пример использования перечисленных методов.

    В следующей программе демонстрируется использование функций insert(), erase(), replace().

//---------------------------------------------------------------------------

#include <vcl.h>
#include <iostream>
#include <string>
#include <conio.h> //необходимо для getch()
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused
using namespace std;

std::string ToRus(const std::string &in)
{
  char *buff = new char [in.length()+1];
  CharToOem(in.c_str(),buff);
  std::string out(buff);
  delete [] buff;
  return out;
}


int main(int argc, char* argv[])
{
  string str1("Это простой тест.");
  string str2("ABCDEFG");

  cout << ToRus("Исходные строки:\n");
  cout << "str1: " << ToRus(str1) << endl;
  cout << "str2: " << str2 << "\n\n";

  // Демонстрация использования функции insert().
  cout << ToRus("Вставляем строку str2 в строку str1:\n");
  str1.insert(5, str2);
  cout << ToRus(str1) << "\n\n";

  // Демонстрация использования функции erase().
  cout << ToRus("Удаляем 7 символов из строки str1:\n");
  str1.erase(5,7);
  cout << ToRus(str1) << "\n\n";

  // Демонстрация использования функции insert().
  cout << ToRus("Заменяем 2 символа в str1 строкой str2:\n");
  str1.replace(5, 2, str2);
  cout << ToRus(str1) << endl;

  getch();
  return 0;
}
//---------------------------------------------------------------------------
Текст этого примера можно взять здесь.

    Результаты выполнения этой программы представлены на рисунке 1.


Рис.1. Результат работы приложения

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




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