работа со строками в с++

  • Автор темы Guest
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

#1
Помогите найти где ошибка, компилятор пишет error C2039: 'clear' : is not a member of 'basic_string<char,struct std::char_traits<char>,class std::allocator<char> >'
Код:
#include <iostream>
#include <fstream>
#include <string>
#include <list>

using namespace std;

void main()
{
list<string> strings;
ifstream fin("Strings.txt");
while (!fin.eof())
{
string s;
getline(fin, s);
size_t first = s.find_first_not_of(' ');
size_t last = s.find_last_not_of(' ');
if (first == string::npos)
s.clear();
else
s = s.substr(first, last - first + 1);
if (!s.empty())
strings.push_back(s);
}
fin.close();
strings.sort();
ofstream fout("output1.txt");
for (list<string>::iterator i = strings.begin(); i != strings.end(); i++)
fout << *i << endl;
fout.close();
}
 
D

Dimmuborgir

#2
И в правду не является, используйте erase :

Код:
iterator erase(iterator first, iterator last);
iterator erase(iterator it);
basic_string& erase(size_type p0 = 0, size_type n = npos);
 
Статус
Закрыто для дальнейших ответов.