“Non déclaré dans la portée du C++ problème

Je suis en train d'écrire une classe simple en C++ pour une classe (à l'école, pas de code). J'ai un peu de C++ de l'expérience, mais ça fait un moment donc je suis réapprendre ce que j'ai oublié et apprendre beaucoup de la nouvelle syntaxe (j'ai beaucoup plus d'expérience en Java). Voici le code:

#include <iostream>
#include <string>

using namespace std;
class Project112
{
private:
    string romanNumeral;
    int decimalForm;
public:
    Project112()
    {
        romanNumeral = "";      
        decimalForm = 0;
    }
    int getDecimal()
    {
        return decimalForm;
    }
};

et voici le pilote:

include cstdlib
include <iostream>

using namespace std;
int main() 
{
    Project112 x;
    int value2 = x.getDecimal();
    return 0;
}

Cela fait partie d'un programme plus large, mais j'ai simplifié à cela parce que c'est la où réside le problème. Chaque fois que j'essaie d'exécuter le programme, j'obtiens les erreurs suivantes:

main.cpp:10: error: 'Project112' was not declared in this scope
main.cpp:10: error: expected `;' before 'x'
main.cpp:14: error: 'x' was not declared in this scope

Quelqu'un peut-il expliquer le problème? Merci à l'avance.

  • Vous ne semblez pas être compris votre en-tête de classe. Bien sur vous pour réduire le code. Une chose que vous devriez faire (Qui sait, l'enseignant peut l'aimez mieux, aussi!) est de perdre la using namespace std; états qui polluent l'espace de noms global.
InformationsquelleAutor gmaster | 2012-06-27