Очевидно, незаконно выполнять импорт std И включать заголовок стандартной библиотеки? Меня это устраивает, я могу сделать и то, и другое, но не могу использовать библиотеку в той же единице перевода, потому что ЭТО включает или ? Так это должно работать?
Я пробовал компилировать на Clang и MSVC, кажется, они не позволяют смешивать эти два компонента, тогда как же включить заголовок из сторонней библиотеки? Есть ли какой-нибудь трюк, например, включение перед импортом или импорт перед включением или что-то в этом роде? Искренне любопытно.
Кроме того, есть ли разница между выполнением этого в модуле или в обычном старом исходном файле? Например, есть ли исключение для фрагмента глобального модуля или чего-то еще? Как насчет простой единицы перевода, которая не является модулем?
Несколько ошибок, которые я получил:
/usr/lib/llvm-22/bin/../include/c++/v1/__ranges/zip_view.h:238:11:
ошибка: предложение require отличается при повторном объявлении шаблона
/usr/lib/llvm-22/bin/../include/c++/v1/__flat_map/flat_map.h:53:10:
примечание: '/usr/lib/llvm-22/bin/../include/c++/v1/__ranges/zip_view.h'
включено несколько раз, дополнительное включение сайта в заголовок из модуля
'std.' 53 | #include
/usr/lib/llvm-22/bin/../include/c++/v1/__ranges/zip_view.h:206:9:
ошибка: переопределение концепции '__zip_all_forward' с другими
параметрами или требованиями шаблона 206 | Concept __zip_all_forward
= (forward_range && ...);
Другой пример из моего проекта:
// In a cpp file
#define STB_IMAGE_RESIZE_IMPLEMENTATION
#include "stbi_resize.h"
#define STB_IMAGE_WRITE_IMPLEMENTATION
#include "stbi_write.h"
#define STB_IMAGE_IMPLEMENTATION
#include "stb_image.h"
import std; // How am I supposed use this if those headers include the standard library headers?
Подробнее здесь: https://stackoverflow.com/questions/798 ... rty-header
Как мне использовать стандартный стандарт импорта, но при этом включать сторонний заголовок? ⇐ C++
Программы на C++. Форум разработчиков
1766472556
Anonymous
Очевидно, незаконно выполнять импорт std И включать заголовок стандартной библиотеки? Меня это устраивает, я могу сделать и то, и другое, но не могу использовать библиотеку в той же единице перевода, потому что ЭТО включает или ? Так это должно работать?
Я пробовал компилировать на Clang и MSVC, кажется, они не позволяют смешивать эти два компонента, тогда как же включить заголовок из сторонней библиотеки? Есть ли какой-нибудь трюк, например, включение перед импортом или импорт перед включением или что-то в этом роде? Искренне любопытно.
Кроме того, есть ли разница между выполнением этого в модуле или в обычном старом исходном файле? Например, есть ли исключение для фрагмента глобального модуля или чего-то еще? Как насчет простой единицы перевода, которая не является модулем?
Несколько ошибок, которые я получил:
/usr/lib/llvm-22/bin/../include/c++/v1/__ranges/zip_view.h:238:11:
ошибка: предложение require отличается при повторном объявлении шаблона
/usr/lib/llvm-22/bin/../include/c++/v1/__flat_map/flat_map.h:53:10:
примечание: '/usr/lib/llvm-22/bin/../include/c++/v1/__ranges/zip_view.h'
включено несколько раз, дополнительное включение сайта в заголовок из модуля
'std.' 53 | #include
/usr/lib/llvm-22/bin/../include/c++/v1/__ranges/zip_view.h:206:9:
ошибка: переопределение концепции '__zip_all_forward' с другими
параметрами или требованиями шаблона 206 | Concept __zip_all_forward
= (forward_range && ...);
Другой пример из моего проекта:
// In a cpp file
#define STB_IMAGE_RESIZE_IMPLEMENTATION
#include "stbi_resize.h"
#define STB_IMAGE_WRITE_IMPLEMENTATION
#include "stbi_write.h"
#define STB_IMAGE_IMPLEMENTATION
#include "stb_image.h"
import std; // How am I supposed use this if those headers include the standard library headers?
Подробнее здесь: [url]https://stackoverflow.com/questions/79853386/how-am-i-supposed-to-use-import-std-but-also-include-a-third-party-header[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия