Problème de compilation [VS2008]
Bonjour, dans le cadre d'un projet scolaire, on doit développer en C++ une prompt d'expression mathématique.
voici ma classes «Expression.h» (elle est obligé d'être abstraite)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
#ifndef _EXPRESSION_H_
#define _EXPRESSION_H_
#include <string>
class Expression
{
public:
Expression(void);
Expression(std::string p_Exp);
virtual ~Expression();
virtual float evaluer(void) = 0;
std::string getExpression() const;
private:
std::string m_Expression;
};
#endif |
Expression.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| #include "Expression.h"
using namespace std;
Expression::Expression(void)
{
}
Expression::Expression(string p_Exp) : m_Expression(p_Exp)
{
}
Expression::~Expression()
{
}
std::string Expression::getExpression() const
{
return m_Expression;
} |
Addition.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| #include "addition.h"
using namespace std;
Addition::Addition(void)
{
}
Addition::~Addition()
{
}
float Addition::evaluer(void)
{
return 0.f;
} |
Addition.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| #ifndef _ADDITION_H_
#define _ADDITION_H_
//#include "main.h"
#include <string>
#include "Expression.h"
class Addition : public Expression
{
public:
Addition(void);
virtual ~Addition();
virtual float evaluer(void) = 0;
private:
//Expression *m_SousExpression;
};
#endif |
parser.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| #include "parser.h"
using namespace std;
Parser::Parser(std::string p_Expression) : m_Expression(p_Expression)
{
}
Parser::~Parser(void)
{
}
void Parser::analyser(std::vector<Expression*> p_VecteurExpression)
{
string l_Exp = m_Expression;
for (int liI = 0; liI = l_Exp.size(); ++liI)
{
if (isdigit(l_Exp[liI]))
{
}
}
} |
parser.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| #ifndef _EXPRESSION_H_
#define _EXPRESSION_H_
//#include "main.h"
#include <vector>
#include <string>
#include "expression.h"
#include "addition.h"
class Parser
{
public:
Parser(std::string p_Expression);
~Parser(void);
void analyser(std::vector<Expression*> p_VecteurExpression);
private:
std::string m_Expression;
};
#endif |
Voici la liste des erreurs :
Citation:
Erreur 1 error C2504: 'Expression'*: classe de base non définie f:\projet ecole\tp2mbb\tp2mbb\addition.h 9 TP2MBB
Erreur 2 error C2065: 'Expression'*: identificateur non déclaré f:\projet ecole\tp2mbb\tp2mbb\parser.h 15 TP2MBB
Erreur 3 error C2059: erreur de syntaxe*: '>' f:\projet ecole\tp2mbb\tp2mbb\parser.h 15 TP2MBB
Erreur 4 error C2059: erreur de syntaxe*: ')' f:\projet ecole\tp2mbb\tp2mbb\parser.h 15 TP2MBB
Erreur 5 error C2143: erreur de syntaxe*: absence de ';' avant '}' f:\projet ecole\tp2mbb\tp2mbb\parser.h 20 TP2MBB
Erreur 6 error C2143: erreur de syntaxe*: absence de ';' avant '{' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 5 TP2MBB
Erreur 7 error C2143: erreur de syntaxe*: absence de ';' avant '}' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 6 TP2MBB
Erreur 8 error C2143: erreur de syntaxe*: absence de ';' avant '{' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 9 TP2MBB
Erreur 9 error C2143: erreur de syntaxe*: absence de ';' avant '}' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 10 TP2MBB
Erreur 10 error C2065: 'Expression'*: identificateur non déclaré f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 13 TP2MBB
Erreur 11 error C2059: erreur de syntaxe*: '>' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 13 TP2MBB
Erreur 12 error C2059: erreur de syntaxe*: ')' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 13 TP2MBB
Erreur 13 error C2143: erreur de syntaxe*: absence de ';' avant '{' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 14 TP2MBB
Erreur 14 error C2143: erreur de syntaxe*: absence de ')' avant ';' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 16 TP2MBB
Erreur 15 error C2059: erreur de syntaxe*: ')' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 16 TP2MBB
Erreur 16 error C2143: erreur de syntaxe*: absence de ';' avant '{' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 17 TP2MBB
Erreur 17 error C2143: erreur de syntaxe*: absence de ';' avant '{' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 19 TP2MBB
Erreur 18 error C2143: erreur de syntaxe*: absence de ';' avant '}' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 21 TP2MBB
Erreur 19 error C2143: erreur de syntaxe*: absence de ';' avant '}' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 22 TP2MBB
Erreur 20 error C2143: erreur de syntaxe*: absence de ';' avant '}' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 23 TP2MBB
Erreur 21 error C2143: erreur de syntaxe*: absence de ';' avant '}' f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 24 TP2MBB
Erreur 22 fatal error C1004: fin de fichier inattendue rencontrée f:\projet ecole\tp2mbb\tp2mbb\parser.cpp 24 TP2MBB
J'avoue que je ne comprend pas d'ou viennent cette erreur ....
Si sa peu vous aidez voici les sources du peu de code développer ^^
http://www.megaupload.com/?d=9MGQ745H