RattleInGlasses / ps_oop

0 stars 0 forks source link

Замечания по программе RemoveExtraSpaces #7

Open alexey-malov opened 9 years ago

alexey-malov commented 9 years ago
    string result = "";

В C++ объявление строки без инициализатора вызывает конструктор по умолчанию, который создает пустую строку. Здесь у тебя конструктор, принимающий ASCIIZ-строку, который чуть помедленнее работает

alexey-malov commented 9 years ago

В качестве позиции в стандартных контейнерах типа vector, string, array используется тип size_t. Передача int-а приведет к неправильной работе программы, если длина контейнера больше, чем позволяет задать int

alexey-malov commented 9 years ago

Функция не должна никак реагировать на \n и на \0. Речь идет о пробелах. Нужно в программе выполнять построчное считывание и каждую строку обрабатыавть независимо от других. Это упростит RemoveExtraSpaces

alexey-malov commented 9 years ago

Лучше при помощи метода reserve зарезервировать в строке result память под хранение результата.

alexey-malov commented 9 years ago

30*0,8=24