![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Цитрус |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 6.12.2009 Репутация: нет Всего: нет |
задание: с помощью функции splice перенести пустые строки в конец списка.
void main () { list <string> L1; string x; string y(" "); ifstream in ("Parser.txt"); for(; in.peek() != EOF; ) { getline(in,x); L1.push_back(x); } copy(L1.begin(), L1.end(),ostream_iterator<string>(c out, "\n")); for (list<string>:: iterator d = L1.begin(); d != L1.end(); d++) { d = L1.insert(d,y); d++; } cout<<"Posle vstavki: "<<endl; copy(L1.begin(), L1.end(),ostream_iterator<string>(c out, "\n")); L1.sort(); cout<<"Posle sortirovki: "<<endl; copy(L1.begin(), L1.end(),ostream_iterator<string>(c out, ";\n")); list<string>:: iterator i = L1.begin(); list<string>:: iterator j = L1.end(); for (;i!=L1.end();++i) { if(*i == " ") { L1.splice(j,L1,i); } } cout<<"Posle peremecsheniya: "<<endl; copy(L1.begin(), L1.end(), ostream_iterator<string>(cout, "; \n")); cout << endl; } непонятно: почему после использования splice перенесена только одна пустая строка? что необходимо изменить, чтобы все вставленные пустые строки оказались в конце? |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |