Utilisation des fichiers d'inclusion

De RAD Studio (Français)

Remonter à Utilitaires en ligne de commande - Index

Dans C++, les fichiers d'inclusion ont toujours l'extension de fichier .h.

Algorithmes de recherche des fichiers d'inclusion

Le compilateur Embarcadero C++ recherche les fichiers inclus dans votre code source via la directive #include en procédant de la manière suivante :

  • Si vous spécifiez un chemin et/ou un répertoire dans votre instruction include, le compilateur ne cherche qu'à l'emplacement spécifié.
    Par exemple, si vous avez l'instruction suivante dans votre code :
    #include "c:\C++\include\vcl\vcl.h"
    le fichier en-tête vcl.h doit résider dans le répertoire C:\C++\include\vcl.
    Par ailleurs, si vous utilisez l'instruction :
    #include <vcl\vcl.h>
    et définissez l'option Chemin de recherche des fichiers d'inclusion (-I) pour spécifier le chemin C:\C++\include, le fichier vcl.h doit résider dans C:\C++\include\vcl, et pas dans C:\C++\include ou C:\vcl.
  • Si vous placez une instruction
    #include "fichier"
    dans votre code source, le compilateur recherche fichier dans l'ordre suivant :
    1. Le répertoire du fichier contenant l'instruction #include.
    2. Les répertoires des fichiers qui incluent (#include) ce fichier.
    3. Le répertoire en cours.
    4. Les répertoires spécifiés par l'option Chemin de recherche des fichiers d'inclusion (-I).

Algorithmes de recherche des fichiers de bibliothèque

Les algorithmes de recherche de fichiers de bibliothèque sont similaires à ceux des fichiers d'inclusion :

  • Bibliothèques implicites : Le compilateur Embarcadero C++ recherche les bibliothèques implicites seulement dans les répertoires de bibliothèque spécifiés (option Chemin bibliothèque (-L)). C'est similaire à l'algorithme de recherche pour : #include "fichier". Les fichiers de bibliothèque implicites sont ceux que le compilateur lie automatiquement dans le fichier objet de démarrage (C0x.OBJ).
  • Bibliothèques explicites : La façon dont vous listez le fichier de bibliothèque détermine en partie où le compilateur recherche les bibliothèques explicites (spécifiées par l'utilisateur). Les fichiers de bibliothèque explicites sont ceux que vous listez sur la ligne de commande ou dans un fichier projet ; leur nom est suivi de l'extension .LIB.
    • Si vous listez un nom de fichier de bibliothèque explicite sans indiquer de lecteur ni de répertoire (comme MYLIB.LIB), le compilateur recherche d'abord cette bibliothèque dans le répertoire en cours. Si la première recherche est infructueuse, le compilateur recherche dans les répertoires spécifiés par l'option Chemin bibliothèque (-L). C'est similaire à l'algorithme de recherche pour #include "fichier".
    • Si vous listez une bibliothèque spécifiée par l'utilisateur avec les informations de lecteur et/ou de répertoire (comme dans : c:\mystuff\mylib1.lib), le compilateur Embarcadero C++ effectue la recherche seulement dans l'emplacement que vous avez explicitement listé en tant que partie du nom de chemin de la bibliothèque, et pas dans les répertoires de bibliothèque spécifiés.

Voir aussi

Autres langues