жаться все хранящиеся в нем об
Автор admin
Пятница, 5 июня 2009 11:32
жаться все хранящиеся в нем объекты. Здесь STL проявляет себя с лучшей стороны; чтобы убедиться в этом, достаточно создать контейнер с объектами типа string. В следующем примере входные строки сохраняются в виде строковых объектов в векторе vector: //: С07:StringVector.cpp // Вектор строк #include #include #include #include #include 338 Глава 7 • Обобщенные контейнеры #i nclude #include “../require.h” using namespace std; int main(int argc. char* argv[]) { char* fname = “StringVector.cpp”; if(argc > 1) fname = argv[l]; ifstream in(fname); assure(in, fname); vector strings: string line: while(getline(in. line)) strings.push_back(line); // Операции со строками… int i = 1; vector::iterator w; for(w = strings.beginO; w != strings.end(); w++) { ostringstream ss; ss « i++; *w = ss.strO + “: ” + *w; } // Вывод содержимого контейнера: copy(strings.begin(). strings.endO. ostream_iterator(cout. “\n”)): // Поскольку строки не являются указателями. // объекты string уничтожаются автоматически! } ///:- Программа сначала с
Комментарии закрыты.
Последние комментарии