Здравствуйте, Константин, Вы писали:
C>>В STL все контейнеры тупые и понятные, там просто нечему тормозить, особенно после добавления move-конструкторов. К>На каждый чих кидают С++ исключения.
Для большинства контейнеров — только bad_alloc, который можно игнорировать. Остальное — только в специальных методах, которые явно проверяют границы (.at).
К>На каждый чих конструируют объекты new/delete: динамическая память в играх не нужна, чем статичнее, тем обычно всё лучше работает, тем более на консолях и мобильниках точно известно, сколько именно есть той памяти.
Где именно "на каждый чих"? В спеке С++ чётко прописано, когда коллекции будут делать распределения памяти и ничего неожиданного там нет совершенно.
И про игры не надо — во многих играх сейчас вообще GC используется вовсю.
К>Для этих new/delete берут память из CRT heap, к которой тоже есть вопросы.
В STL можно использовать свои аллокаторы, которые в С++11 ещё и stateful. Так что никто не мешает использовать арены, пулы или разделяемую память.
C>>Сейчас единственное улучшение в нашей внутренней STL — это специализация векторов для POD-объектов К>Интересно, есть ли среди ваших target platforms консоли? Мобильники? Или только PC и x86 сервера?
Есть, конечно же. А чем они нынче от обычных PC отличаются?