Категория
Информатика
Тип
реферат
Страницы
6 стр.
Дата
10.03.2009
Формат файла
.rtf — Rich Text Format (Wordpad)
Архив
20684.zip — 7.54 kb
  • kak-uskorit-kompiljaciju-s-pomoshhju-predkompilirovannyx-zagolovkov-v-s-builder_20684_1.rtf — 47.82 Kb
  • Readme_docus.me.txt — 125 Bytes
Оцените работу
Хорошо  или  Плохо


Текст работы

Как ускорить компиляцию с помощью предкомпилированных заголовков в С++ Builder
Alena Alena
Как ускорить компиляцию с помощью предкомпилированных заголовков в С++ Builder
Серебров Борис
Precompiled headers can dramatically increase compilation speeds ...
С++ Builder Language Guide
Вместо вступления сразу приведу пример. Полная сборка (build) проекта, содержащего около 170 cpp-модулей, при использовании предкомпилированных заголовков происходит за 811 секунд, при этом число обработанных компилятором строк составляет 1,808,780. При компиляции того же проекта без использования предкомпилированных заголовков, время сборки составляет 2399 секунд, а число строк, обработанных компилятором - 45,261,820. Впечатляет, не так ли? Плата за это ускорение, в принципе не велика - предкомпилированный образ, размер которого
около 40 Мб.
При компиляции исходных текстов, компилятор должен обработать все *.cpp файлы проекта и все включенные в них *.h - файлы. При этом обрабатываются как пользовательские заголовочные файлы, так и стандартные, такие как vcl.h или W Количество кода, находящегося в стандартных заголовках может быть очень большим, например размер файла Word2k.h превышает 5 Мб, в нем больше
130 000 строк кода.
Так как содержимое стандартных заголовков не изменяется, то их компиляция при каждой сборке проекта является напрасной тратой времени. Предкомпилированные заголовки помогают решить эту проблему - стандартные файлы компилируются один раз, а затем используется скомпилированный двоичный образ.
Принцип действия предкомпилированных
заголовков
Для управления предкомпилированными
предназначена директива компилятора #pragma hdrstop. Все заголовочные файлы, включенные до этой директивы, помещаются в



Ваше мнение



CAPTCHA