私は最近、アプリ内のさまざまなクラス間で共有されるデータを含む単一の静的目的 C クラスを含む IOS アプリ コードをいくつか継承しました。これは非常に気の利いたデザイン パターンであり、コードへの追加に既に利用しています。シングルトンの構造はこの投稿と非常によく似ています
それについて、私を驚かせることが1つだけあります。このシングルトンを使用する Objective C オブジェクトは、ヘッダー ファイルをインポートしません。しかし、それらはすべて、実装宣言されたインターフェースにアクセスできます。これは、私には「遠くからの不気味なやり取り」のように見えます。シングルトンの名前を入力すると、xcode によってコード ステートメントの補完候補が表示されます。コンパイラをコンパイルすると、笑顔で、宣言の欠落について不平を言うことはありません。
はい、ヘッダーをインポートするインポートを確認しましたが、どれも行いません。独自のヘッダーのみを含む単純なテストクラスを作成しましたが、メソッドにはシングルトンの名前を配置して、その中のすべてにアクセスできます。
私の質問は、この自動インポートを行っているのは誰または何ですか? Xコード?オブジェクティブ C? 小さな緑のエイリアン?