Даже если учитывать что вдруг этим кто-то будет пользоваться, то что изменится если я на лету буду строку обрабатывать? Время выполнения уменьшится на пол секунды и расход по памяти будет на 50 байт меньше?
Я понимаю, что представленный код — груда помоев, все это с опытом приходит, а я студент обыкновенный, который самообучением только и занимается
Ее и нет в цикле вот вызов и он стоит до цикла splitted_buf = utils::split_buffer(line, ':', retn);
Мне по этому вектору один раз пройтись и вычистить его, что там отслеживать? С усложнением логики — согласен
Да и вообще не очень понимаю, что Вы там к этим строкам придрались, если я два скриншота выше кидал с точками остановы на 2-ом элементе и на 4, по ним видно, что записало адекватно все, однако при записи в общий массив все идет не так, как надо
Можно заканчивать обсуждение Выделил память под каждую строку — заработало
Да, криво прочитал. В правильном варианте не понимаю смысла исходного утверждения. Перерасход памяти, очевидно, зависит от числа строк, которые ты за раз собрался парсить. Если их будут сотни тысяч, то он будет огромным. Для двух строк, конечно, им можно пренебречь. Однако, если ты хочешь научиться писать нормальный код, а не просто "лабу" сдать, то лучше все-таки задумываться об более общих сценариях использования. Я тебе предложил алгоритм нормального решения твоей проблемы, но если тебе хочется страдать, то это твое право. :)
Обсуждают сегодня