Forum: Konstigt fel

Forum huvudsida -> Programmering -> Konstigt fel

Sidor: 1

Till botten

martin310 18:27 - 5:e Juni 2008 | Post #1
Medlem
Inlägg: 132


Skicka PM
Jag visste inte vad jag skulle söka på så jag frågar direkt:

Jag har jobbar ett litet spel som man ska ha en bondgård i. Men när jag komplimerar den så kommer dessa felen:

  1. 1>c:usersfam. risell-liljadocumentsvisual studio 2008projectsthe farm (console)the farm (console)special_spel.h(52) : error C3861: 'normal_game': identifier not found
  2. 1>c:usersfam. risell-liljadocumentsvisual studio 2008projectsthe farm (console)the farm (console)main.cpp(11) : error C3861: 'menue': identifier not found
  3. 1>c:usersfam. risell-liljadocumentsvisual studio 2008projectsthe farm (console)the farm (console)main.cpp(10) : error C2084: function 'int main(void)' already has a body
  4. 1> c:usersfam. risell-liljadocumentsvisual studio 2008projectsthe farm (console)the farm (console)main.cpp(9) : see previous definition of 'main'


Här är koden:

Main:
  1. #include <iostream>
  2. #include "main_menue.h"
  3.  
  4. using std::cout;
  5. using std::cin;
  6.  
  7. int main()
  8. {
  9. menue();
  10.  
  11. return 0;
  12. }


main_menue.h:
  1. #pragma once
  2. #include <iostream>
  3. #include "spel.h"
  4. #include "special_spel.h"
  5.  
  6. using std::cout;
  7. using std::cin;
  8.  
  9. void menue();
  10.  
  11. void menue()
  12. {
  13. int meny_val;
  14.  
  15. cout << "Välkommen till huvud menyn!nHär ifrån kan du välja vad du vill göra.n1. Nytt Speln2. Special speln3. Avslutan";
  16. cin >> meny_val;
  17.  
  18. if (meny_val == 1)
  19. {
  20. normal_game();
  21. }
  22.  
  23. else if (meny_val == 2)
  24. {
  25. special_spel();
  26. }
  27.  
  28. else
  29. {
  30. return;
  31. }
  32. }


special_spel.h:
  1. #pragma once
  2. #include <iostream>
  3. #include "spel.h"
  4.  
  5. using std::cout;
  6. using std::cin;
  7.  
  8. void special_spel();
  9.  
  10. void special_spel()
  11. {
  12. int regn;
  13. int varme;
  14. int blast;
  15. int bordighet;
  16. char namn[31];
  17.  
  18. system("cls");
  19.  
  20. cout << "Välkommen till special spel göraren!n";
  21. cout << "Skriv in ett värde för regnet n(0 betyder alltid regn 100 betyder regn jätte sällan (lite konstigt, jag vet!))n";
  22. cin >> regn;
  23. cout << "nVärde för regn: " <<regn<< "n";
  24. cin.get();
  25.  
  26. system("cls");
  27. cout << "Skriv in ett värde för värmenn(100 är jätte varmt 0 är jätte kallt)n";
  28. cin >> varme;
  29. cout << "nVärde för värme: " <<varme<< "n";
  30. cin.get();
  31.  
  32. system("cls");
  33. cout << "Skriv in ett värde för blåstenn(100 är jätte vindigt 0 är jätte lungt)n";
  34. cin >> blast;
  35. cout << "nVärde för blåsten: " <<blast<< "n";
  36. cin.get();
  37.  
  38. system("cls");
  39. cout << "Skriv in ett värde för bördighetenn(100 är jätte börgigt 0 är jätte dåligt)n";
  40. cin >> bordighet;
  41. cout << "nVärde för bördighet: " <<bordighet<< "n";
  42. cin.get();
  43.  
  44. system("cls");
  45. cout << "Skriv in namnet på stället!n(Max 31 bokstäver!!!)";
  46. cin >> namn;
  47. cout << "Stället heter: " <<namn<< "n";
  48. cin.get();
  49.  
  50. normal_game();
  51.  
  52. return;
  53. }


spel.h:
  1. #pragma once
  2. #include <iostream>
  3. #include "special_spel.h"
  4. #include "main.cpp"
  5. #include "main_menue.h"
  6.  
  7. using std::cout;
  8. using std::cin;
  9.  
  10. void normal_game();
  11.  
  12. void normal_game()
  13. {
  14. system("cls");
  15. cout << "lol du har en farm!";
  16. cin.get();
  17.  
  18. return;
  19. }


Har en kommentar på första raden.

-------------------------

Hjälp jorden med Granola, det är gratis och funkar på både Windows och Linux, och försämrar inte datorns prestandad!





Slash 21:03 - 5:e Juni 2008 | Post #2
Medlem
Inlägg: 141


Skicka PM
Ett litet tips bara när det gäller include-filer.

module.h:
// Prototyper i den här
#pragma once // Eftersom du använde det i dina filer
void minfunktion();
int beräkna(int n);


module.cpp:
// Implementationer här
#include "module.h"

void minfunktion()
{
// do important stuff
}

int beräkna(int n)
{
return 4*n*n;
}


Set inkluderar du bara module.h i den filen du vill använda funktionerna i (det är oftast ett fel att inkludera en .cpp-fil om du inte absolut vet vad du gör). Sen länkar du med .cpp-filen, vilket oftast innebär att du har det i ditt projekt i de flesta populära utvecklingsmiljöer.

Prova strukturera upp det så och se vad du stöter på för problem då. Lycka till!

-------------------------
Ingen sigantur!

Senast redigerad 21:07 - 5:e Juni 2008


martin310 21:15 - 5:e Juni 2008 | Post #3
Medlem
Inlägg: 132


Skicka PM
Tog bort includen till main, felet att den inte hittar normal_game är kvar. Kanske går att ta bort
  1. #include "special_spel.h"
från spel.h men jag behöver variablarna i special_spel.h i spel.h.

  1. 1>c:\users\fam. risell-lilja\documents\visual studio 2008\projects\the farm (console)\the farm (console)\special_spel.h(52) : error C3861: 'normal_game': identifier not found


-------------------------

Hjälp jorden med Granola, det är gratis och funkar på både Windows och Linux, och försämrar inte datorns prestandad!





Sidor: 1

Forum huvudsida -> Programmering -> Konstigt fel
Atom feed

Du får inte posta i den här tråden | Till toppen