Описание тега c++-modules
По вопросам, касающимся предложения TS модулей C++ по мере его развития. Частичные реализации различных предложений модулей можно найти в Visual Studio 2015 и Clang.
0
ответов
Заголовочные файлы и модули в C++: друзья или враги?
Существует рабочий проект, Расширения до C++ для модулей (находится в Экспериментальных возможностях C++). Если это станет Стандартным, что это будет означать для традиционных заголовков? Я имею в виду, что когда я слышу об импорте модуля, я думаю о…
10 окт '17 в 14:47
1
ответ
Не могу импортировать субмодуль
На clang version 6.0.0 (tags/RELEASE_600/final) Не могу импортировать std субмодули как std.vector, Все import std работает нормально, но import std.vector не. я использую libc++ Карта модуля, которая правильно определяет этот модуль. редактировать …
01 июн '18 в 14:29
1
ответ
Ошибки Clang++ -fmodules с использованием типов после #include <cstdint>
Следующий простой файл тестового примера дает мне ошибку во время компиляции с подсказкой 'master' из зеркала github Clang, при компиляции с -fmodules, используя команду, показанную ниже. Мне интересно, если это ошибка с новой экспериментальной функ…
07 дек '16 в 22:07
1
ответ
Какова ожидаемая связь модулей C++ и динамической связи?
Модули C++ TS предоставляют отличное средство для исключения препроцессора, улучшения времени компиляции и, как правило, поддержки гораздо более надежной, модульной разработки кода на C++, по крайней мере для не шаблонного кода. Базовый механизм обе…
12 сен '18 в 03:17
1
ответ
Назначение "import std;" в C++
Я видел следующий небольшой фрагмент кода на сайте cppdepend. import std; // Module import directive. int main() { std::cout<<"Hello World\n"; } Итак, какова цель import std; в С ++? Как пользоваться import std; вместо using namespace std; в С…
19 июл '17 в 17:02
2
ответа
Связывание модулей C++ TS с использованием clang
Я пытаюсь использовать модули C++ TS с Clang. Я создал два файла: // foo.cppm export module foo; export void test() { } а также // bar.cpp import foo; int main() { test(); return 0; } Я компилирую foo.cppm с этой командой clang++ --std=c++17 -fmodul…
03 фев '18 в 11:23
1
ответ
Модули C++: модули реализации модулей для ненужной перекомпиляции?
Недавно просмотренное видео с CppCon 2017: Борис Колпаков "Сборка модулей C++" https://www.youtube.com/watch?v=E8EbDcLQAoc Примерно в 31:35 он начинает объяснять, что мы все еще должны использовать разбиение заголовка / источника и показывает 3 прич…
17 янв '18 в 17:21
1
ответ
Что такое модуль C++?
Я видел несколько ссылок на термин "компетенция" в контексте модулей C++, например, в https://gcc.gnu.org/wiki/cxx-modules: Baz (); // Baz's declaration visible from purview Quux interface Что именно относится к модулю C++?
10 мар '18 в 00:39
1
ответ
Как экспортировать функции и классы из модуля, не используя ключевое слово `export`?
Я изучаю возможность использования C++ Modules TS в своем любимом проекте. Одним из важных вариантов использования для меня является упаковка устаревших заголовков. Предположим, у меня есть заголовочный файл с некоторыми функциями и классами std.io.…
02 апр '17 в 10:51
2
ответа
Форвардные объявления в модулях C++ (MSVC)
В последнее время я экспериментировал с реализацией модулей, предоставленных MSVC, и столкнулся с интересным сценарием. У меня есть два класса, которые имеют взаимную зависимость в своих интерфейсах, что означает, что мне придется использовать предв…
16 июл '18 в 13:08
1
ответ
С ++ 20? модули - нет вывоза рядовых
Смотрел 2 выступления CppCon Габриэля Дос Рейса о модулях TS. И, насколько я помню, он не хотел экспортировать какие-либо частные элементы / функции, поэтому другие модули не смогут их использовать вообще. Я понимаю его позицию, но не будет ли это п…
10 май '17 в 01:32
1
ответ
build2: компилятор не поддерживает модули
Я могу создавать проекты C++ без модулей C++ с build2, но когда я пытаюсь настроить и использовать build2 с модулями C++, у меня появляется ошибка "компилятор не поддерживает модули". Я уверен, что мой компилятор способен создавать модули, потому чт…
30 июл '18 в 00:33
1
ответ
Использование модулей C++ TS со стандартными заголовками в Linux
Я тестирую простой модуль C++, используя модули ts: export module strings; #include <string> Когда я пытаюсь скомпилировать это с заголовками clang (trunk) и GCC 7.2 в linux, я получаю следующее: clang++ -std=c++2a -fmodules-ts -fprebuilt-modu…
09 янв '18 в 17:37
0
ответов
Экспорт класса, импортированного из другого модуля
Я экспериментирую с модулями C++, используя clang 5.0, и я пытаюсь понять, как я могу экспортировать из одного модуля что-то, что я импортировал из другого модуля. Это вообще возможно? Например, я хотел бы иметь что-то вроде этого: // root.hehe.cppm…
06 май '18 в 15:30
4
ответа
При использовании модулей C++ имеет ли смысл отделять объявления функций (файлы.hpp) от их определений (файлы.cpp)?
Я привык писать код без модулей, где заголовочные файлы содержат объявления функций, такие как: // foo.h class Foo { void bar(); }; и соответствующий файл.cpp содержит определение: // foo.cpp #include "foo.h" void Foo::bar() { // ... } Насколько мне…
23 сен '16 в 17:42
2
ответа
Будет ли предстоящее добавление модулей в C++ исправлять / облегчать необходимость использования языка pimpl?
Идиома pimpl, насколько я могу судить, скрывает частную реализацию за заранее объявленным именем символа, поэтому она может быть объявлена и использована в частном модуле cpp. Пример: https://cpppatterns.com/patterns/pimpl.html Насколько я могу су…
09 фев '18 в 12:48
1
ответ
Включает ли рабочий проект C++ 20 псевдонимы импортированных модулей?
Включает ли модуль TS символы псевдонимов импортированных модулей? Я провел небольшой поиск, но не увидел ничего такого, что упоминало бы об этом. Оглядываясь назад, можно вспомнить, но мне любопытно, есть ли какой-нибудь C++, эквивалентный ES201N i…
14 июл '18 в 01:04
0
ответов
Стандартный модуль не найден
Я пытаюсь построить простой код на основе функции модулей C++. Включение стандартных заголовков там не работает из-за не полной поддержки. Я нашел это import std.[...] должны быть использованы для достижения этого. К сожалению, Clang не хочет загруж…
28 май '18 в 21:26
1
ответ
Как использовать стандартную библиотеку с модулями C++? (например: `import std.io`)
Основной пример, приведенный в разделе Как использовать модули C++ в Clang? работает для меня, но не импортирует стандартную библиотеку (например, через import std.stdio;); после просмотра http://clang.llvm.org/docs/Modules.html не было ясно, как ис…
05 апр '18 в 23:58
0
ответов
Модули TS и чисто виртуальные классы
Эта проблема Я пытаюсь использовать чистый виртуальный класс, который я определил в другом модуле, однако, когда я пытаюсь использовать его, я сталкиваюсь со следующей проблемой: base class undefined Бонус Инфо В моем поиске, чтобы определить, в чем…
25 сен '16 в 00:29