Шаблоны, макросы, STL в общем - все занимают огромное количество места. Обозначенная как отличная универсальная библиотека, BOOST добавляет много места для проектов. BOOST_FOR_EACH является примером этого. Это сотни строк шаблонного кода, которых можно было бы просто избежать, написав правильный дескриптор цикла, который, как правило, всего несколько нажатий клавиш.
Получите Visual AssistX для сохранения набора текста без использования шаблонов. Также подумайте о владении кодом, который вы используете. Макросы и расширение встроенных функций не обязательно будут отображаться.
Также, если вы можете, перейдите от архитектуры DLL к статическому связыванию всего в один исполняемый файл, который работает в разных «режимах». Нет абсолютно ничего плохого в том, чтобы использовать один и тот же исполняемый образ столько раз, сколько вы хотите, просто передавая другой параметр командной строки в зависимости от того, что вы хотите, чтобы он делал.
Библиотеки DLL являются худшим виновником потери пространства и замедления времени выполнения проекта. Люди думают, что они экономят пространство, хотя на самом деле они имеют противоположный эффект, иногда увеличивая размер проекта в десять раз! Плюс они увеличивают обмен. Используйте фиксированные секции кода (без секции перемещения) для производительности.