Salut a tous,
voila je debute en programmation et je rencontre un souci avec mon code. Voila j'ai implemente deux classes Microwave et FrozenMeal, et la j'essaye de faire un calcul dans mon fichier FrozenMeal.cpp tout en utilisant les attributs de la classe Microwave. Comme le montre mon implementation plus bas j'ai appele ceux ci en utilisant des getters mais helas au moment de compiler, ca me dit que mon getPower() et mon getPeriod () ne sont ni definis, ni trouves.Je n'arrive pas a comprendre mon erreur.Merci d'avance pour toute aide


Microwave.h

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "FrozenMeal.h"
 
class Microwave
{
public:
	Microwave();
	void  morePower();
	void  lessPower();
	void  setPeriod(double);
	void  heatMeal(FrozenMeal&) const;
	int   getPower() const;
	double getPeriod() const;
 
 
private :
	int power;
	double period;
};
Microwave.cpp

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream>
#include <cmath>
#include "Microwave.h"
 
using namespace std;
 
Microwave::Microwave()
{
	power = 200;
	period = 0;
	cerr << " Mikrowelle gekauft ..." << endl;
 
}
 
void Microwave::morePower()
{
	if (power < 200)
		power += 200;
}
 
void Microwave::lessPower()
{
	if (power > 1000)
		power -= 200;
}
void Microwave::setPeriod( double zeit)
{
	period = zeit;
}
 
void Microwave:: heatMeal(FrozenMeal& repas) const
{
 
	repas.setTemperature ( repas.getTemperature() + (repas.getKoeffizient()  * getPower() * getPeriod() / repas.getVolume()) );
 
}
int Microwave::getPower() const
{
	return power;
}
double Microwave::getPeriod() const
{
	return period;
}
FrozenMeal.h

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# include <string>
 
class FrozenMeal
{
public:
 
	    FrozenMeal(std ::string, int);
		std :: string getName() const;
		int getVolume() const;
		double getKoeffizient() const;
		double getTemperature() const;
		void setTemperature(double);
private:
 
		std ::string name;
		int volume;
		double temperature ;
		double koeffizient ;
};
FrozenMeal.cpp

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <string>
#include "FrozenMeal.h"
 
using namespace std;
 
FrozenMeal::FrozenMeal(string nom, int vol)
{
 
	name = nom;
	volume = vol;
	temperature = -18;
	koeffizient = 0.24;
 
}
 
void FrozenMeal::setTemperature(double temp)
{
	temperature = temp;
}
 
string FrozenMeal::getName() const
{
	return name;
}
int FrozenMeal::getVolume() const
{
 
	return volume;
}
double FrozenMeal::getKoeffizient() const
{
	return koeffizient * temperature / ( getPower() * getPeriod() ); // <--------------------- Ici
}
double FrozenMeal::getTemperature() const
{
	return temperature;
}
main.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include "Microwave.h"
#include<string>
 
using namespace std;
 
int main()
{
 
 
 
	Microwave Sony ;
	FrozenMeal Pasta("Pasta",8);
 
	cout << " \n Das Gericht  " << Pasta.getName() << " hat eine Anfangstemperatur von : " << Pasta.getTemperature() << " Grad Celsius. " << endl << endl;
 
	Sony.morePower();
	Sony.setPeriod(10);
 
	cout << " Das Gericht " << Pasta.getName() << " wird mit  "  << Sony.getPower() << " Watt Leistung " << Sony.getPeriod() << "  Sekunden lang erwaermt ." << endl << endl;
 
	Sony.heatMeal(Pasta);
 
    cout << " Die neue Temperatur ist : " << Pasta.getTemperature() << " Grad Celsius. " << endl;
 
}