0

Object-cのインポートとインクルードの違いが気になる

ところで、動的リンクと静的リンクの違いについてはよくわかりません。

静的リンクでライブラリを使用する場合、プログラムに必要なコードをライブラリからコピーしてリンクするということですか? その後、私のプログラムはライブラリのコードで動作します。

動的リンクでライブラリを使用する場合、それは、プログラムの実行中にライブラリからプログラムに必要なコードのみを参照することを意味します。その後、私のプログラムは「参照コード」で動作します。

4

1 に答える 1

2

#importvs.#includeおよび静的 vs. 動的リンクは、まったく無関係な 2 つのトピックです。

#includeファイルの内容を別のファイルに直接インクルードし、C で利用できます (したがって、Objective-C でも利用できます)。ただし、ファイルがまだインクルードされていない場合にのみ、ファイルの内容をインクルードすることが一般的です。(たとえば、同じ変数を 2 回宣言するのは望ましくありません。コンパイラ エラーが発生します!) そのため、Objective-C に が追加されました。まさにそれを行います:ファイルがまだ編集されていない場合にのみ、ファイルの内容を含めます。何を使用すればよいかわからない場合は、おそらく を使用する必要があります。#import#import#import

静的リンクと動的リンクは完全に異なります。リンクはコンパイルに行われるため、ソース コードの一部である#importとに関連している可能性はありません。#includeただし、リンクに関するあなたの考えは正確です。静的にリンクされたライブラリはアプリに含まれており、ユーザーはそれらを必要としません。動的にリンクされたライブラリは参照され、アプリを実行するにはユーザーのマシンに存在する必要があります。

于 2012-06-26T16:45:07.217 に答える