В Objective C ++ я должен импортировать или включать заголовочные файлы C ++ - PullRequest
5 голосов
/ 10 ноября 2011

Что-то не так с

#import "SomeCppHeaderFile.h"

в объективном заголовке C ++? Или я должен включить, как это (есть ли разница, если заголовок cpp имеет обычные #ifndef #define #endif макросы заголовка gard)

#include "SomeCppHeaderFile.h"

1 Ответ

7 голосов
/ 10 ноября 2011

Нет ничего плохого в #import "SomeCppHeaderFile.h".Директива #import существует в препроцессорах C / C ++ GCC и Clang;Разница с #include заключается в том, что он предназначен для того, чтобы не включать дважды один и тот же файл в один и тот же модуль компиляции.

Эта директива не является стандартной C, поэтому, если вы планируете отправлять свои библиотеки в другие системы,осторожный.Насколько я знаю, он поддерживается только GCC и Clang, и парням из GCC это не очень нравится по этой причине.

...