hdrstop pragma

Vous donne plus de contrôle sur les noms de fichiers de précompilation et sur l’emplacement où l’état de compilation est enregistré.

Syntaxe

#pragma hdrstop [ ( « filename » ) ]

Notes

Le nom de fichier est le nom du fichier d’en-tête précompilé à utiliser ou à créer (selon qu’il /Yu est spécifié ou /Yc spécifié). Si le nom de fichier ne contient pas de spécification de chemin d’accès, le fichier d’en-tête précompilé est supposé se trouver dans le même répertoire que le fichier source.

Si un fichier C ou C++ contient une hdrstoppragma fois compilé avec /Yc, le compilateur enregistre l’état de la compilation jusqu’à l’emplacement du pragmafichier . État compilé de n’importe quel code qui suit l’enregistrement pragma n’est pas enregistré.

Utilisez un nom de fichier pour nommer le fichier d’en-tête précompilé dans lequel l’état compilé est enregistré. Un espace entre hdrstop le nom de fichier et le nom de fichier est facultatif. Le nom de fichier spécifié dans la hdrstoppragma chaîne est une chaîne et est soumis aux contraintes d’une chaîne C ou C++. En particulier, vous devez l’inclure entre guillemets et utiliser le caractère d’échappement (barre oblique inverse, \) pour spécifier les noms de répertoires. Par exemple :

#pragma hdrstop( "c:\\projects\\include\\myinc.pch" )

Le nom du fichier d’en-tête précompilé est déterminé selon les règles suivantes par ordre de priorité :

  1. Argument de l’option du /Fp compilateur

  2. Argument de nom de fichier à #pragma hdrstop

  3. Nom de base du fichier source avec une extension PCH

Si aucune des options et /Yu options ou hdrstoppragma spécifie un nom de /Yc fichier, le nom de base du fichier source est utilisé comme nom de base du fichier d’en-tête précompilé.

Vous pouvez également utiliser les commandes de prétraitement pour remplacer une macro comme suit :

#define INCLUDE_PATH "c:\\progra~1\\devstsu~1\\vc\\include\\"
#define PCH_FNAME "PROG.PCH"
.
.
.
#pragma hdrstop( INCLUDE_PATH PCH_FNAME )

Les règles suivantes régissent l’emplacement où le hdrstoppragma fichier peut être placé :

  • Il doit apparaître hors de toute déclaration ou définition de données ou de fonction.

  • Il doit être spécifié dans le fichier source, pas dans un fichier d'en-tête.

Exemple

#include <windows.h>                 // Include several files
#include "myhdr.h"

__inline Disp( char *szToDisplay )   // Define an inline function
{
    // ...                           // Some code to display string
}
#pragma hdrstop

Dans cet exemple, l’affichage s’affiche après que hdrstoppragma deux fichiers ont été inclus et qu’une fonction inline a été définie. Cet emplacement peut sembler d’abord être un emplacement impair pour le pragma. Considérez toutefois que l’utilisation des options de précompilation manuelle et/Yu, /Yc avec les hdrstoppragma rend possibles pour vous permettre de précompiler des fichiers sources entiers, ou même du code inline. Le compilateur Microsoft ne vous limite pas à précompiler uniquement les déclarations de données.

Voir aussi

Directives pragma et les __pragma_Pragma mot clé