[解決済み] Objective-Cの#importと#includeの違いは何ですか?
2022-02-19 01:09:57
質問
Objective-Cの#importと#includeの違いは何ですか?また、どちらかを使用した方が良い場合もありますか?一方は非推奨ですか?
以下のチュートリアルを読んでいました。 http://www.otierney.net/objective-c.html#preamble と、#import と#include についての段落が矛盾しているか、少なくとも不明瞭であるように思えます。
どのように解決するのですか?
Objective-Cでは、#includeの改良版として#import指令が追加されました。しかし、改良されているかどうかは、まだ議論の余地がある。#import はファイルが一度だけインクルードされることを保証し、再帰的なインクルードで問題が発生することがないようにします。しかし、ほとんどのまともなヘッダーファイルは、いずれにせよこの問題から自分自身を保護するので、実際にはそれほど大きな利点はありません。
基本的に、どちらを使うかはあなた次第です。私は、Objective-Cのもの(クラス定義など)には#importヘッダーを、必要なものには#include標準Cのものを使うことが多いですね。例えば、私のソース・ファイルの1つは次のようなものです。
#import <Foundation/Foundation.h>
#include <asl.h>
#include <mach/mach.h>
関連
-
[解決済み] イニシャライザーの要素がコンパイル時定数でない
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] アトミック属性と非アトミック属性の違いは何ですか?
-
[解決済み] require, include, require_once, include_onceの違い?
-
[解決済み] Objective-Cのtypedef enumとは何ですか?
-
[解決済み] Rubyのincludeとrequireの違いは何ですか?
-
[解決済み] クラスメソッドとインスタンスメソッドの違いは何ですか?
-
[解決済み] "require(x)" と "import x" の違いについて
-
[解決済み】Rubyのincludeとextendの違いって何?
-
[解決済み】新しい自動リファレンスカウント機構はどのように機能するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] どのような場合に@synthesizeを明示的に使用する必要がありますか?
-
[解決済み] C言語:拡張子「.mm」は何の略ですか?
-
[解決済み] クラス 'test_coredataAppDelegate' の重複したインターフェイス宣言
-
[解決済み] .02fと%.2fの違いは何ですか?
-
[解決済み] デバイス用にコンパイルするとApple Mach-Oのリンカーエラーが発生する。
-
[解決済み] インスタンスに送信されたセレクタが認識されない」を解決するには?
-
[解決済み] synthesize vs @dynamic、その違いとは?
-
[解決済み] ブロック(__block)」というキーワードはどういう意味ですか?
-
[解決済み] インポート vs #インポート - iOS 7
-
[解決済み】Objective-Cでクラスレベルのプロパティを宣言するにはどうすればいいですか?