Отключить оптимизацию памяти Stl - PullRequest
1 голос
/ 04 мая 2011

STL оптимизирует распределение памяти для строковых объектов, предоставляя память для строковых объектов из пула памяти, хранящегося в стандартной библиотеке. Возможно ли отключить эту оптимизацию?

Я использую VS 2008

Ответы [ 2 ]

3 голосов
/ 04 мая 2011

Нет, вы не можете. Из ссылки C ++ на строку :: строка:

За исключением конструктора копирования, необязательный конечный параметр существует для всех конструкторов basic_string, тип которых является аргументом шаблона Allocator. Этот параметр влияет на модель выделения памяти, которая будет использоваться для объекта. Чтобы обеспечить лучшую читаемость, и поскольку при неизвестной реализации компилятора на модель выделения памяти для строк (allocator) влияет ее значение , оно не было включено в объявления выше, но см. Элемент базового шаблона объявление впереди для более полного объявления.

1 голос
/ 04 мая 2011

Следующий вопрос поможет вам понять, как можно манипулировать std::basic_string для использования с различными распределителями

Как я могу выделить std :: string в стеке, используя реализацию строки glibc

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...