Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpMoInr 566 of 696 menu
◀ ▶

Введение в модули в C++

Модуль - именованный набор объявлений, который компилируют отдельно от заголовка и подключают директивой import, а не цепочкой #include.

Точка входа main.cpp не заменяет модуль: интерфейс живет в файле модуля, а программа лишь импортирует опубликованные имена. Сборка модулей зависит от компилятора; для g++ часто нужны флаги -std=c++20 и -fmodules-ts, у других компиляторов набор ключей иной.

В интерфейсе модуля demo оставим скрытое объявление и экспортируем функцию answer:

export module demo; void hidden(); export int answer() { return 7; }

Файл программы импортирует модуль и обращается только к экспортированному имени; вызов hidden снаружи недоступен:

import demo; #include <iostream> int main() { std::cout << answer() << "\n"; // hidden(); // имя не видно вне модуля demo return 0; }
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить