web-dev-qa-db-fra.com

Comment éviter les en-têtes précompilés

J'essaie de compiler un programme VS simple en C++ en tant qu'affectation de classe. Nous n'incluons jamais que <iostream> et je continue à avoir cette erreur:

1> Assignment.cpp (15): erreur fatale C1010: fin de fichier inattendue lors de la recherche d'un en-tête précompilé. Avez-vous oublié d'ajouter '#include "StdAfx.h"' à votre source?

Mon programme est littéralement ce petit ...

#include <iostream>
using namespace std;
int main()
{
    unsigned int day = 30;

    cout << "My Name is John Doe" << endl;
    cout << "My Major is CS" << endl;
    cout << "I was born on day " << day << endl;
    return 0;
}

Je viens d'installer Visual Studio Express 2010. Je voudrais vraiment commencer un projet vide au lieu de l'installer avec tous ces fichiers prédéfinis. Je pense que cela faciliterait beaucoup les choses, mais je n'ai jamais cette option lors de la création d'un projet. Quelqu'un a des suggestions?

64
Howdy_McGee

Vous pouvez toujours désactiver l'utilisation d'en-têtes pré-compilés dans les paramètres du projet.

Instructions pour VS 2010 (devrait être similaire pour les autres versions de VS):

Sélectionnez votre projet, utilisez le menu "Projet -> Propriétés" et accédez à la section "Propriétés de configuration -> C/C++ -> En-têtes précompilés", puis remplacez le paramètre "En-tête précompilé" par "Ne pas utiliser les en-têtes précompilés".


Si vous essayez uniquement de configurer un projet Visual Studio minimal pour des programmes de ligne de commande C++ simples (tels que ceux développés dans les classes de programmation d'introduction C++), vous pouvez créer un projet C++ vide .

94
André Caron

Vous pouvez créer un projet vide en sélectionnant "Projet vide" dans le groupe "Général" de projets Visual C++ (peut-être que ce modèle de projet n'est pas inclus dans Express?).

Pour résoudre le problème dans le projet que vous avez déjà, ouvrez les propriétés du projet et accédez à:

Configuration Properties | C/C++ | Precompiled Headers

Et choisissez "Ne pas utiliser les en-têtes précompilés" pour l'option "En-tête précompilé".

9
Michael Burr

Le fichier .cpp Est configuré pour utiliser un en-tête précompilé. Il doit donc être inclus en premier (avant iostream). Pour Visual Studio, son nom est généralement "stdafx.h".

S'il n'y a pas de fichier stdafx * dans votre projet, vous devez accéder aux options de ce fichier et le définir comme "Ne pas utiliser les en-têtes précompilés".

5
hamstergene

essayez d'ajouter #include "stdafx.h" avant #include "iostream"

0
SergeyT