Раздел модуля в C++
Раздел модуля - дополнительная единица
с именем основной:раздел; ее объявляют
как export module math:part и связывают
с первичным интерфейсом через export import :part.
Код раздела хранят в отдельном файле модуля:
export module math:part;
export int scale(int x) {
return x * 2;
}
Первичный интерфейс импортирует раздел и использует его экспорт:
export module math;
export import :part;
export int total(int x) {
return scale(x) + 1;
}
Напишите geo-core.cppm с export module geo:core;
и экспортом int side(), возвращающей 4.
В geo.cppm укажите export module geo;
и export import :core;.
Для модуля pack добавьте раздел pack:util
с экспортом int pad(int x), возвращающей
x + 1. В первичном pack.cppm
подключите раздел и экспортируйте int wrap(int x),
вызывающую pad.