Модули повлияли на развитие модульности в C++ следующим образом:
- Позволили разделять код на отдельные компоненты. 1 У каждого из них есть свой интерфейс и реализация, которые можно импортировать по мере необходимости. 1
- Сократили время компиляции. 14 Файл модуля компилируется один раз, и результаты сохраняются в двоичном файле, который обрабатывается компилятором быстрее, чем заголовочный файл. 1
- Устранили недостатки, связанные с заголовочными файлами. 1 Макросы и неэкспортируемые объекты, объявленные в модуле, невидимы вне него. 1
- Позволили импортировать модули в любом порядке. 14 При этом не нужно заботиться о переопределениях макросов. 1
Таким образом, модули представляют «глобальную» модульность, то есть модульность всей программы. 2