Основные отличия условной и согласованной компиляции:
- Условная компиляция позволяет компилировать или не компилировать части кода в зависимости от наличия символьных констант или их значения. 4 Например, её используют при отладке программного кода, а также для компиляции программ под конкретные операционные системы. 4
- Согласованная компиляция предполагает, что объекты составляются только для тех исходных файлов, которые были изменены, для остальных объектные файлы не пересоздаются. 1 Это позволяет создавать большие программы без необходимости повторения шага компиляции каждый раз, когда некоторые файлы будут изменены. 1
Таким образом, условная компиляция фокусируется на управлении процессом компиляции частей кода, а согласованная компиляция — на оптимизации процесса компиляции для больших программ: объекты составляются только для изменённых файлов, для остальных не пересоздаются. 1