Partager via


Deux méthodes au choix pour la précompilation du code

Mise à jour : novembre 2007

Avec Visual C++, vous pouvez précompiler n'importe quel code C ou C++ ; vous n'êtes pas limité à la précompilation des seuls fichiers d'en-tête.

La précompilation requiert une certaine planification, mais permet des compilations sensiblement plus rapides si vous précompilez un code source autre que des fichiers d'en-tête simples.

Précompilez le code lorsque vous savez que vos fichiers sources utilisent des jeux communs de fichiers d'en-tête mais ne les incluez pas dans le même ordre, ou lorsque vous souhaitez inclure du code source dans votre précompilation.

Les options d'en-tête précompilé sont /Yc (Créer un fichier d'en-tête précompilé) et /Yu (Utiliser un fichier d'en-tête précompilé). Utilisez /Yc pour créer un en-tête précompilé. Quand elle est associée au pragma hdrstop facultatif, l'option /Yc permet de précompiler à la fois le code source et les fichiers d'en-tête. Sélectionnez l'option /Yu pour utiliser un en-tête précompilé existant dans la compilation en cours. Vous pouvez également utiliser /Fp avec les options /Yc et /Yu afin de fournir un autre nom pour l'en-tête précompilé.

Les rubriques de référence de l'option du compilateur /Yu et /Yc décrivent comment accéder à ces fonctionnalités dans l'environnement de développement.

Génération d'un fichier PCH

Vous pouvez utiliser un fichier PCH pour en générer un autre, de manière relativement simple.

cl -c -Yc"stuff.h" -Fplevel1.pch level1.cpp
cl -c -Yu"stuff.h" -Fplevel1.pch -Yc level2.cpp

Le fichier level2.cpp ressemble à ceci :

#include "stuff.h"
#include "morestuff.h"
#pragma hdrstop("level2.pch")

La commande suivante génère level2.pch, qui peut être utilisé dans d'autres compilations :

cl -c -Yu"morestuff.h" -Fplevel2.pch mysource.cpp

Notez qu'il suffit de placer la directive #pragma hdrstop dans le fichier qui génère le deuxième fichier PCH ; il n'est pas nécessaire de l'insérer dans tous les fichiers .cpp utilisant PCH. Les fichiers qui utilisent le PCH peuvent nommer le fichier morestuff.h dans la ligne de commande (vous n'avez donc pas besoin d'éditer tous les fichiers pour vous en servir). Les deux méthodes de précompilation du code — automatique et manuelle — stockent le code de précompilation résultant dans un en-tête précompilé.

Informations supplémentaires

Pour d'autres exemples d'utilisation d'en-têtes précompilés, consultez les makefiles utilisés pour générer les exemples de programmes fournis avec la bibliothèque MFC (Microsoft Foundation Class Library).

Voir aussi

Référence

Création de fichiers d'en-tête précompilés