Konzept des C++-Include-Pfads

Muhammad Adil 12 Oktober 2023
  1. C++-Include-Pfadverzeichnis in der Visual Studio-IDE
  2. Möglichkeiten zum Einschließen von Pfaden in C++
  3. Wie der Präprozessor die Pfade durchsucht
  4. Unterschied zwischen #include "" und #include <>
Konzept des C++-Include-Pfads

Include-Pfade werden verwendet, um dem Compiler mitzuteilen, wo er nach Header-Dateien suchen soll. Der Compiler durchsucht die durch diese Pfade angegebenen Verzeichnisse, bis er eine Header-Datei mit passendem Namen findet.

C++-Include-Pfadverzeichnis in der Visual Studio-IDE

Der Include-Pfad wird als Argument für den Compiler angegeben, normalerweise in der Befehlszeile. Normalerweise befindet sich das Include-Pfadverzeichnis an folgendem Speicherort:

C:\Program Files\Microsoft Visual Studio 14.0\VC

Um dieses Verzeichnis hinzuzufügen, müssen Sie die unten aufgeführten Schritte ausführen.

  • Öffnen Sie die Visual Studio-IDE.
  • Wählen Sie auf der Registerkarte Erstellen die Option Configuration Manager aus.
  • Wählen Sie Ihren Compiler aus und klicken Sie auf Öffnen.
  • Klicken Sie auf VC++-Verzeichnisse.
  • Klicken Sie auf Dateien einschließen und dann auf Neuen Pfad hinzufügen.
  • Geben Sie den Pfad Ihres gewünschten Ordners ein oder klicken Sie auf die Schaltfläche, um danach zu suchen.
  • Nachdem Sie dieses Verzeichnis ausgewählt haben, klicken Sie auf Hinzufügen. Dieser neue Speicherort wird der Liste der Verzeichnisse auf der Registerkarte Verzeichnisse hinzufügen hinzugefügt.

Möglichkeiten zum Einschließen von Pfaden in C++

Es gibt mehrere Möglichkeiten, die Pfade in C++ einzubinden. Die beliebteste Methode ist die Verwendung der Präprozessordirektive.

Die Präprozessordirektive ist ein Schlüsselwort, das den Compiler anweist, Code auszuführen, bevor das eigentliche Programm kompiliert wird. Es kann verwendet werden, um Konstanten und Makros zu definieren oder andere Dateien in Ihr Programm einzubinden.

Eine andere Möglichkeit, Pfade in C++ einzubinden, ist die Verwendung eines Makros. Makros sind eine andere Art von Funktion, die anstelle eines Bezeichners oder einer anderen Zeichenfolge verwendet werden kann, die Sie als einzelnes Token darstellen möchten.

Diese Funktionen werden normalerweise für einfache Textersetzungen verwendet, z. B. wenn Sie eine lange Zeile haben und diese durch etwas Kürzeres ersetzen möchten, z. B. Hello World anstelle von Hello World.

Wie der Präprozessor die Pfade durchsucht

Der Präprozessor durchsucht das C++-Verzeichnis für Include-Pfade nach den Header-Dateien und schließt sie dann in den Kompilierungsprozess ein. Die Suchreihenfolge ist von links nach rechts und von oben nach unten.

Header-Dateien werden standardmäßig eingeschlossen, wenn sie in einem der Verzeichnisse gefunden werden, die im Verzeichnis include-Pfade aufgelistet sind. Wenn eine Header-Datei in keinem dieser Verzeichnisse gefunden wird, wird sie im aktuellen Verzeichnis und dann in allen übergeordneten Verzeichnissen durchsucht, bis sie gefunden wird oder es keine weiteren übergeordneten Verzeichnisse zum Durchsuchen gibt.

Wenn eine Header-Datei nicht gefunden werden kann, wird eine Fehlermeldung ausgegeben, und die Kompilierung schlägt fehl, wenn Sie dies nicht angeben.

Wenn Sie eine vollständige, eindeutige Pfadangabe für die eingebundene Datei in doppelte Anführungszeichen setzen, durchsucht der Präprozessor nur diese Pfadangabe und vernachlässigt die üblichen Verzeichnisse.

Unterschied zwischen #include "" und #include <>

#include "" ist für vom Programmierer definierte Header-Dateien. Wenn ein Programmierer seine eigene Header-Datei erstellt hat, sollte der Name der Header-Datei in Anführungszeichen gesetzt werden.

Andererseits wird #include <> verwendet, um vordefinierte Header-Dateien einzubinden. Wenn die Header-Datei vordefiniert ist, setzen Sie den Namen der Header-Datei in eckige Klammern.

Lassen Sie uns einige der Beispiele besprechen.

#include <stdio.h>

#include <iostream>

#include "adil.h"

Dies sind einige Beispiele zum Einbinden von Pfaddateien in C++.

Muhammad Adil avatar Muhammad Adil avatar

Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.

Facebook