Класс string на C++

Discussing libraries simplifying applications development
  • Для избежания фрагментации памяти советую изначально алоциловать char* text некоторым значением памяти (string capacity) по умолчанию, например 32 байта.
    В setString проверять, если новая строка больше текущей, увеличивать размер text. Тут есть разные подходы -- или размером новой строки, но кратным размеру memory aligment, или 2^n, или прогрессией. Если же новая строка меньше текущей -- использовать текущую. Важный момент -- размер text не уменьшается, разве что только в случае, если пользователь явно этого хочет и вызовет специальную функцию (что-то типа string::shrink_to_fit)
  • Who is online

    Users browsing this forum: No registered users and 0 guests