C ++ 20 Модули: оператор импорта против #include - Каковы различия и преимущества?C++

Программы на C++. Форум разработчиков
Anonymous
C ++ 20 Модули: оператор импорта против #include - Каковы различия и преимущества?

Сообщение Anonymous »

c ++ 20 представляет модули в качестве значительного улучшения по сравнению с традиционной файловой системой заголовка и директивой #include . В то время как новый оператор Import предназначен для замены #include В большинстве случаев я пытаюсь полностью понять основные различия и приносящие модули преимуществ. Тем не менее, я изо всех сил пытаюсь понять более тонкие точки.

Код: Выделить всё

#include
: текстовое включение файлов заголовка. Препроцессор непосредственно вставляет содержимое файла заголовка в исходный файл. < /Li>
[*] [/b]: импортирует интерфейсы предварительно скомпилированных модулей, предоставляя более надежный и эффективный механизм повторного использования кода.
Модули избегайте загрязнения макроса и именных столкновений, явно контролируя то, что экспортируется. />
За пределами скорости компиляции, каковы основные различия в том, как импорт и #include работают под капотом? Я ищу более глубокое понимание технических механизмов в игре. Например, создает ли Import отдельный компиляционный блок, и если да, то как связаны эти блоки?

Подробнее здесь: https://stackoverflow.com/questions/796 ... -and-advan

Вернуться в «C++»