Unterschied zwischen Einschließen und Importieren [Duplizieren]

8

Was ist der Unterschied zwischen

? %Vor%     
Gugan 06.11.2012, 11:40
quelle

4 Antworten

13

Die #import -Direktive ist eine verbesserte Version von #include .   #import stellt sicher, dass eine Datei nur einmal enthalten ist, so dass Sie nie ein Problem mit rekursiven Includes haben.

#import "" prüft zuerst die Kopfzeile im Projektordner und geht dann zur Systembibliothek, und die #import<> sucht nach Systemkopfzeilen. "Theoretisch sind die Speicherorte Compiler definiert und sie könnten auf einer bestimmten Plattform anders implementiert werden.

    
Midhun MP 06.11.2012, 11:43
quelle
3

Bei Verwendung von #import ist der Header include guard nicht erforderlich. Ansonsten ist es wie #include .

Der Header enthält Guard, gesehen in C- und C ++ - Dateien:

%Vor%     
justin 06.11.2012 11:42
quelle
3
___ answer13250287 ___

Bei Verwendung von %code% ist der Header include guard nicht erforderlich. Ansonsten ist es wie %code% .

Der Header enthält Guard, gesehen in C- und C ++ - Dateien:

%Vor%     
___ qstnhdr ___ Unterschied zwischen Einschließen und Importieren [Duplizieren] ___ tag123objectivec ___ Dieses Tag sollte nur bei Fragen verwendet werden, die sich auf Objective-C-Features beziehen oder von Code in der Sprache abhängen. Die Tags [Kakao] und [Kakao-Touch] sollten verwendet werden, um nach Frameworks oder Klassen von Apple zu fragen. Verwenden Sie die zugehörigen Tags [ios], [macos], [apple-watch] und [tvos] für Probleme, die für diese Plattformen spezifisch sind. ___ tag123ios ___ iOS ist das mobile Betriebssystem, das auf dem Apple iPhone, iPod touch und iPad ausgeführt wird. Verwenden Sie dieses Tag [ios] für Fragen zur Programmierung auf der iOS-Plattform. Verwenden Sie die verwandten Tags [objective-c] und [swift] für Probleme, die für diese Programmiersprachen spezifisch sind. ___ answer13250304 ___

Die Anweisung #import wurde zu Objective-C als verbesserte Version von #include hinzugefügt. Ob es verbessert wird oder nicht, ist jedoch immer noch umstritten. #import stellt sicher, dass eine Datei nur einmal enthalten ist, sodass Sie nie ein Problem mit rekursiven Includes haben. Die meisten anständigen Header-Dateien schützen sich jedoch ohnehin davor, so dass es nicht wirklich von Vorteil ist.

Was ist der Unterschied zwischen #import und #include in Objective-C? :

  

#include und #import fordern an, dass der Präprozessor * eine Datei liest und   füge es zu seiner Ausgabe hinzu. Der Unterschied zwischen #include und #import ist   das

     Mit

#include können Sie dieselbe Datei mehrmals einschließen. #einführen   stellt sicher, dass der Präprozessor nur einmal eine Datei enthält. C   Programmierer neigen dazu, #include zu verwenden. Objective-C-Programmierer neigen dazu, zu verwenden    #einführen.

     

* Das Kompilieren einer Datei in Objective-C erfolgt in zwei Durchgängen. Zuerst,
  Der Präprozessor durchläuft die Datei. Die Ausgabe von der   Präprozessor geht in den echten Compiler.

    
___ tag123include ___ Eine Bestimmung, die von vielen Programmiersprachen bereitgestellt wird, um die in einer Datei definierte Funktionalität in einer anderen zu verwenden. ___ tag123headerfiles ___ Header-Dateien werden in einigen Programmiersprachen verwendet, um Quellcode als eine einzelne Kopie zu speichern, die in mehreren Quelldateien wiederverwendet werden kann. Dieses Tag sollte für Fragen zur Verwendung von Header-Dateien verwendet werden. Ein Tag für die Programmiersprache wie C, C ++, PHP oder Ruby sollte zusammen mit diesem Tag verwendet werden, da die Verwendung der Header-Datei zwischen Programmiersprachen variieren kann. Dieses Tag wird normalerweise nicht mit der Java- oder Go-Programmierung und der Import-Anweisung verwendet. ___ tag123includeguards ___ Alles, was mit C / C ++ zu tun hat, umfasst die Wächtertechnik, d. h. eine Technik, die bedingte Kompilierungsfunktionen des C-Präprozessors verwendet, um Mehrfacheinfügungen von Headerdateien in C / C ++ - Quelldateien zu verhindern. ___ answer13250310 ___

Die %code% -Direktive ist eine verbesserte Version von %code% .   %code% stellt sicher, dass eine Datei nur einmal enthalten ist, so dass Sie nie ein Problem mit rekursiven Includes haben.

%code% prüft zuerst die Kopfzeile im Projektordner und geht dann zur Systembibliothek, und die %code% sucht nach Systemkopfzeilen. "Theoretisch sind die Speicherorte Compiler definiert und sie könnten auf einer bestimmten Plattform anders implementiert werden.

    
___ qstntxt ___

Was ist der Unterschied zwischen

? %Vor%     
___ antwort13250392 ___

Import ist Super-Set von Include, es stellt sicher, dass die Datei nur einmal enthalten ist. Dies erspart Ihnen die rekursive Aufnahme. über "" und & lt; & gt ;. "" Suche im lokalen Verzeichnis und & lt; & gt; wird für Systemdateien verwendet.

    
___
Muhammad Usman Aleem 06.11.2012 11:49
quelle
2

Die Anweisung #import wurde zu Objective-C als verbesserte Version von #include hinzugefügt. Ob es verbessert wird oder nicht, ist jedoch immer noch umstritten. #import stellt sicher, dass eine Datei nur einmal enthalten ist, sodass Sie nie ein Problem mit rekursiven Includes haben. Die meisten anständigen Header-Dateien schützen sich jedoch ohnehin davor, so dass es nicht wirklich von Vorteil ist.

Was ist der Unterschied zwischen #import und #include in Objective-C? :

  

#include und #import fordern an, dass der Präprozessor * eine Datei liest und   füge es zu seiner Ausgabe hinzu. Der Unterschied zwischen #include und #import ist   das

     Mit

#include können Sie dieselbe Datei mehrmals einschließen. #einführen   stellt sicher, dass der Präprozessor nur einmal eine Datei enthält. C   Programmierer neigen dazu, #include zu verwenden. Objective-C-Programmierer neigen dazu, zu verwenden    #einführen.

     

* Das Kompilieren einer Datei in Objective-C erfolgt in zwei Durchgängen. Zuerst,
  Der Präprozessor durchläuft die Datei. Die Ausgabe von der   Präprozessor geht in den echten Compiler.

    
jainvikram444 06.11.2012 11:43
quelle