2009-10-06 8 views
0

J'ai écrit le corps de la fonction dans le fichier d'en-tête et je n'ai donc pas de fichier source. quand j'ai essayé de courir mon projet en studio visuel .. Je suis unFichier d'en-tête sans fichier source

error: Cannot open source file: No such file or directory. 

Comment puis-je faire visual studio comprendre que les définitions de la fonction sont dans l'en-tête lui-même?

+0

Vous * avez * au moins un fichier source, n'est-ce pas? 'main' doit être dans un fichier source. – rlbond

Répondre

3

Vous devez créer un fichier contenant source.cpp factice juste #include « source.h »

modifier - Je viens d'essayer ce - Visual Studio vous permettra de faire.

test.cpp

#include "test.h" 

où test.h

#include "stdio.h" 
int main() 
{ 
    printf("hello world"); 
    return 0; 
} 

Intéressant - mais inutile!

+0

Vous n'avez pas besoin de faire cela. Vous pouvez intégrer des fonctions simplement en les créant dans le fichier d'en-tête. Il y a quelque chose d'autre fondamentalement faux ici. – wheaties

+1

Je suppose que c'est le seul fichier de son projet. VS ne construira pas un projet avec seulement des en-têtes. –

+0

Vous pouvez placer toutes sortes de choses dans le fichier d'en-tête, mais s'il n'y a pas au moins un fichier source, Visual Studio ne compilera rien. (BTW, les fonctions ne sont pas incorporées en étant dans le fichier d'en-tête, elles sont automatiquement incorporées en étant dans la définition de classe.) –