Использование устаревших заголовочных файлов в качестве модулей C++20C++

Программы на C++. Форум разработчиков
Anonymous
Использование устаревших заголовочных файлов в качестве модулей C++20

Сообщение Anonymous »

Я нахожусь в процессе преобразования моего старого кода во что-то, что можно импортировать в виде модулей C++. Проблема в том, что я бы хотел, чтобы он все еще работал и его можно было легко поддерживать как старую версию заголовка/исходного кода. Как мне это сделать (если возможно).
Можно ли создать модуль, экспортирующий содержимое заголовка? (Любое другое решение, позволяющее сохранять старые файлы .cpp/.h и файлы модулей, также принимается)
Пример игрушки:

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

// In vector.h
template 
struct Vector {
T x, y;
}

// In .cppm
export module vector;
// #include "vector.h"
// Export struct/class Vector from header
Я пробовал просто экспортировать Vector в разные версии, с шаблонами и без них и т. д.
Бонусный вопрос: можете ли вы сделать это для стандартной библиотеки? (например, iostream или строка)

Подробнее здесь: https://stackoverflow.com/questions/662 ... 20-modules

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