Итак, я прочитал проблему 4.5 с ускоренного C++ и интерпретировал ее довольно неправильно. Я написал программу, которая должна отображать количество слов в строке. Тем не менее, я, наверное, сделал что-то очень глупое и очень неправильно. Я не могу понять.Получение ошибки времени выполнения работы с векторами
Введите код: http://ideone.com/87zA7E.
Stackoverflow говорит, что ссылки на ideone.com должны сопровождаться кодом. Вместо того, чтобы наклеивать все это, я просто вставить функцию, которую я думаю, что, скорее всего, по вине:
vector<str_info> words(const vector<string>& s) {
vector<str_info> rex;
str_info record;
typedef vector<string>::size_type str_sz;
str_sz i = 0;
while (i != s.size()) {
record.str = s[i];
record.count = 0;
++i; //edit
for (str_sz j = 0; j != s.size(); ++j) {
if (compare(record, s[j]))
++record.count;
}
for (vector<str_info>::size_type k = 0; k != s.size(); ++k) {
if (!compare(record, rex[k].str))
rex.push_back(record);
}
}
return rex;
}
Где проблема? Что оно делает? – JeffRSon
Ошибка времени выполнения. В прошлый раз, когда я запускал его на своем компьютере, он съел всю оперативную память. Однако даже после увеличения i-го, я все равно получаю ту же ошибку. –