/Yu (Usare il file di intestazione precompilato)

Indica al compilatore di usare un file di intestazione precompilato esistente (.pch) nella compilazione corrente.

Sintassi

/Yu[filename]

Argomenti

filename
Nome di un file di intestazione, incluso nel file di origine usando una #include direttiva del preprocessore.

Osservazioni:

Il nome del file di inclusione deve essere lo stesso per entrambe le /Yc opzioni che crea l'intestazione precompilata e per qualsiasi opzione successiva /Yu che indica l'uso dell'intestazione precompilata.

Per /Yc, filename specifica il punto in cui si arresta la precompilazione. Il compilatore precompila tutto il codice tramite nome file e nomi dell'intestazione precompilata risultante usando il nome di base del file di inclusione e un'estensione di .pch.

Il .pch file deve essere stato creato utilizzando /Yc.

Il compilatore considera precompilato tutto il codice che si verifica prima del file H. Passa solo oltre la #include direttiva associata al .h file, usa il codice contenuto nel .pch file e quindi compila tutto il codice dopo il nome file.

Nella riga di comando non è consentito spazio tra /Yu e nome file.

Quando si specifica l'opzione /Yu senza un nome di file, il programma di origine deve contenere un #pragma hdrstop pragma che specifica il nome file dell'intestazione precompilata, .pch file. In questo caso, il compilatore userà l'intestazione precompilata (.pch file) denominata da /Fp (Name .pch file). Il compilatore passa al percorso di tale pragma e ripristina lo stato compilato dal file di intestazione precompilato specificato. Compila quindi solo il codice che segue il pragma. Se #pragma hdrstop non specifica un nome di file, il compilatore cerca un file con un nome derivato dal nome di base del file di origine con un'estensione .pch . È anche possibile usare l'opzione /Fp per specificare un file diverso .pch .

Se si specifica l'opzione /Yu senza un nome file e non è possibile specificare un hdrstop pragma, viene generato un messaggio di errore e la compilazione non riesce.

Se le /Ycopzioni nome file e/Yu nome file si verificano nella stessa riga di comando e fanno entrambi riferimento allo stesso nome file, /Ycil nome file ha la precedenza, precompilazione di tutto il codice fino a e incluso il file denominato. Questa funzionalità semplifica la scrittura di makefile.

Poiché .pch i file contengono informazioni sull'ambiente del computer e sull'indirizzo di memoria relativi al programma, è consigliabile usare solo un .pch file nel computer in cui è stato creato.

Per altre informazioni sulle intestazioni precompilate, vedere:

Per impostare l'opzione del compilatore nell'ambiente di sviluppo di Visual Studio

  1. Specificare /Yc (Crea file di intestazione precompilato) in un file con estensione cpp nel progetto.

  2. Aprire la finestra di dialogo Pagine delle proprietà del progetto. Per informazioni dettagliate, vedere Impostare il compilatore e le proprietà di compilazione.

  3. Selezionare la pagina delle proprietà Proprietà>di configurazione C/C++>Intestazioni precompilate.

  4. Modificare la proprietà Intestazione precompilata, la proprietà Create/Use PCH through File o la proprietà Create/Use Precompiled Header .

Per impostare l'opzione del compilatore a livello di codice

Esempio

Se il codice seguente:

#include <afxwin.h>   // Include header for class library
#include "resource.h" // Include resource definitions
#include "myapp.h"    // Include information specific to this app
...

viene compilato usando la riga CL /YuMYAPP.H PROG.CPPdi comando , il compilatore non elabora le tre istruzioni di inclusione. Usa invece codice precompilato da MYAPP.pch, che consente di risparmiare tempo durante la pre-elaborazione di tutti e tre i file (e i file che potrebbero includere).

È possibile usare l'opzione /Fp (Name .pch file) con l'opzione /Yu per specificare il nome del .pch file se il nome è diverso dall'argomento filename o /Yc dal nome di base del file di origine, come nell'esempio seguente:

CL /YuMYAPP.H /FpMYPCH.pch PROG.CPP

Questo comando specifica un file di intestazione precompilato denominato MYPCH.pch. Il compilatore usa il relativo contenuto per ripristinare lo stato precompilato di tutti i file di intestazione fino a e includendo MYAPP.h. Il compilatore compila quindi il codice che si verifica dopo la #include "MYAPP.h"direttiva * .

Vedi anche

Opzioni del compilatore MSVC
Sintassi della riga di comando del compilatore MSVC