История изменений
Исправление Siborgium, (текущая версия) :
Какое отношение строки-массивы имеют к дополнительным блокам памяти?
Сколько нужно дополнительных блоков, чтобы выделить std::shared_ptrstd::string ? Два-три.
-
Никакого отношения число «дополнительных» блоков памяти в указанном типе не имеет к строкам-массивам.
-
Меньше 2 на мутабельную строку выделять не получится в принципе без дополнительных приседаний – со всеми оптимизациями.
И почему-то нам не хотелось написать свой стандарт, который бы нам помешал это сделать.
Интрузивные хэш-таблицы отношения к unordered_map не имеют. unordered_{map,set} вошли в стандарт такими по историческим причинам, и даже с этой оговоркой являются достаточно производительными. Интрузивные хэш-таблицы в Boost обладают специфичным интерфейсом, не подходящим для обобщенного использования.
Выполнив некорректную последовательность деструкторов RAII может выстрелить себе в ногу
Выполнив некорректную последовательность финализаторов, GC может выстрелить себе в ногу
Повреждение памяти намного, НАМНОГО опаснее, чем просто утекшие ресурсы.
Это спорное утверждение, не говоря уже о том, что повреждение памяти куда легче обнаружить.
Сейчас это тупо примитивный сахарок для расчета выравнивания структуры
Нет, это не сахарок для расчета выравнивания структуры
- этого сильно, сильно меньше, чем нужно для высокоуровневого программирования.
С вообще не для высокоуровневого программирования.
Исходная версия Siborgium, :
Какое отношение строки-массивы имеют к дополнительным блокам памяти?
Сколько нужно дополнительных блоков, чтобы выделить std::shared_ptrstd::string ? Два-три.
-
Никакого отношения число «дополнительных» блоков памяти в указанном типе не имеет к строкам-массивам.
-
Меньше 2 на мутабельную строку выделять не получится в принципе без дополнительных приседаний – со всеми оптимизациями.
И почему-то нам не хотелось написать свой стандарт, который бы нам помешал это сделать.
Интрузивные хэш-таблицы отношения к unordered_map не имеют. unordered_{map,set} вошли в стандарт такими по историческим причинам, и даже с этой оговоркой являются достаточно производительными. Интрузивные хэш-таблицы в Boost обладают специфичным интерфейсом, не подходящим для обобщенного использования.
Выполнив некорректную последовательность деструкторов RAII может выстрелить себе в ногу
Выполнив некорректную последовательность финализаторов, RAII может выстрелить себе в ногу
Повреждение памяти намного, НАМНОГО опаснее, чем просто утекшие ресурсы.
Это спорное утверждение, не говоря уже о том, что повреждение памяти куда легче обнаружить.
Сейчас это тупо примитивный сахарок для расчета выравнивания структуры
Нет, это не сахарок для расчета выравнивания структуры
- этого сильно, сильно меньше, чем нужно для высокоуровневого программирования.
С вообще не для высокоуровневого программирования.