Domanda

Il Follow-up di questo domanda:

Quando faccio include <iostream>.
Succede che include molti file da /usr/include .Un grep "\usr\include" oltre g++ -E prog.cpp contati circa 1260 voci ;).

È il loro modo di controllo tra i vari file?
Piattaforma:Linux
G++ versione:4.2.4

È stato utile?

Soluzione

No, <iostream> include loro perché dipende da loro direttamente, o è dipendenze dipendono da loro.

Non è niente che tu possa fare al riguardo.

È possibile (a seconda del compilatore) limitare l'effetto che questo ha sui tempi di compilazione utilizzando intestazioni precompilate

Altri suggerimenti

Il mio suggerimento è di non preoccuparsi di come molti file, il compilatore è incluso.Concentrarsi di più su correttezza, robustezza, e pianificazione.Se il tempo è un problema, avere una macchina più veloce, costruire durante la notte, andare a fare una passeggiata, o dividere il codice in più le unità di traduzione.Le unità di traduzione dovrebbe essere abbastanza piccolo per contenere un codice che non cambia di frequente. Le modifiche sono MALE.

Il fondamento del sistema di generazione è quello di compilare solo i pochi file che sono stati modificati.Se il processo di sviluppo di un corretto funzionamento, il tempo di costruzione risiedono più nella fase di collegamento come il progetto cresce.

Se la compilazione è ancora lunga, vedere se il tuo compilatore supporta intestazioni precompilate.In genere, questo è il metodo per il compilatore per memorizzare tutte le dichiarazioni e definizioni in modo più efficiente.

È #include <iostream> quando è necessario utilizzare i flussi. Questo dovrebbe definire alcune cose che avete bisogno. Quanto l'attività di cui ha bisogno per fare questo è una qualità di problema di implementazione. Si potrebbe rimuovere i file da /usr/include, ma che sarebbe rompere le cose.

I davvero dubbi che è compreso 1260 file. Quasi certamente la maggior parte di queste sono voci duplicate che non caricano niente, ma non sono potati dall'uscita -E.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top