На этом шаге мы приведем программу, демонстрирующую обработку строк.
В данной программе демонстрируется использование оператора присваивания для назначения string-объекту строки в кавычках, оператора "+" - для конкатенации строк и операторы сравнения для сравнения строк.
//--------------------------------------------------------------------------- #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 позволяет эффективно "); string str2("обрабатывать строки."); string str3; // Присваивание string-объекта. str3 = str1; cout << ToRus(str1) << "\n" << ToRus(str3) << "\n"; // Конкатенация двух string-объектов. str3 = str1 + str2; cout << ToRus(str3) << "\n"; // Сравнение string-объектов. if (str3 > str1) cout << "str3 > str1\n"; if (str3 == str1+str2) cout << "str3 == str1+str2\n"; /* Объекту класса string можно также присвоить обычную строку. */ str1 = "Это строка с завершающим нулем.\n"; cout << ToRus(str1); // Создание string-объекта с помощью // другого string-объекта. string str4(str1); cout << ToRus(str4); // Ввод строки. cout << ToRus("Введите строку: "); cin >> str4; cout << str4; getch(); return 0; } //---------------------------------------------------------------------------
Результаты выполнения этой программы представлены на рисунке 1.
Рис.1. Результат работы приложения
Со следующего шага мы приведем небольшой обзор функций-членов класса string.