Apple は、すべてのフレームワーク クラスのヘッダーで次のコードを使用します。
#if !defined(__COREFOUNDATION_CFARRAY__)
#define __COREFOUNDATION_CFARRAY__ 1
...
#endif
これは、フレームワークで使用するクラスまたはカテゴリを設計するときに、「重複シンボル」リンカ エラーを排除するための推奨されるアプローチですか、それとも cの#include
代わりに使用することからの保護が残っていますか?#import
これに関する調査により、インクルードガードに関するこの記事にたどり着きました
注: この質問は、シンボルの重複エラーを修正する方法を尋ねているのではなく、プロジェクトに複数回含まれている場合に、独自のコードが問題を引き起こすのを防ぐ方法があるかどうかを尋ねています。