Использование @import в объекте C в сочетании с __cplusplus - программирование

Использование @import в объекте C в сочетании с __cplusplus

Когда я пытаюсь скомпилировать файл Objective С++ (.mm), связанный с файлом, который использует новую директиву @import, я получаю некоторые ошибки. В настоящее время единственным решением является замена @import старой директивой #import.

Есть ли другое решение, поэтому я все еще могу использовать @import?

4b9b3361

Ответ 1

Edit: Согласно последним документам, это должно работать сейчас.

См. this. Вы должны использовать флаг -fcxx-modules вместо флага -fmodules, но, как предлагает официальная документация - EXPERIMENTAL and VERY BROKEN. Мне не удалось заставить его работать вообще... По-моему, лучше придерживаться #import и #include до тех пор, пока эта функция не закончится с этапа experimental.

Из clang.llvm.org:

-fcxx-modules
    Enable the modules feature for C++ (EXPERIMENTAL and VERY BROKEN).