où doit “inclure” être mis en C++

Je suis en train de lire certains de code c++ et de l'Avis qu'il y a "#include" à la fois dans les fichiers d'en-tête .fichiers cpp . Je suppose que si je me déplace tous les "#include" dans le fichier, disons foo.cpp aussi son " en-tête de fichier foo.hh et laissez foo.cpp inclure uniquement des foo.hh le code devrait fonctionner de toute façon sans tenir compte de questions comme les inconvénients , l'efficacité et etc .

Je sais que mon "tout à coup" idée doit être en quelque sorte une mauvaise idée, mais quelle est l'exacte des inconvénients de celui-ci? Je suis novice en c++ donc je ne veux pas de lire beaucoup de C++ livre avant que je puisse répondre à cette question par moi-même. donc, il suffit de déposer la question ici pour votre aide . merci à l'avance.