probléme surcharge operator+
bonjour
je m'entraine sur la surcharge des operateur+ , j'ai crée un petit programme pour 'mentrainer , il se trouveee que je n'arrive pas a faire quelque chose
exempleee j'ai objet 1+ objet 2 la c'est ok
mais si je fais 10 + objet la ça ne va plus
je vous donne mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| .h :
#ifndef DEF_Pc
#define DEF_Pc
class Pc
{
public:
Pc(int ram = 0, int capacite = 0, int proc = 0);
Pc operator+(const Pc &pc);
void afficher();
private:
int m_ram;
int m_capacite;
int m_proc;
};
#endif |
Code:
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
|
pc:
#include <iostream>
#include "op.h"
using namespace std;
Pc::Pc(int ram, int capacite, int proc) : m_ram(ram), m_capacite(capacite), m_proc(proc)
{
}
Pc Pc::operator+(const Pc &pc)
{
int ram = m_ram;
int capacite = m_capacite;
int proc = m_proc;
proc += pc.m_proc;
capacite += pc.m_capacite;
// 3 : ajout des heures
ram += pc.m_ram;
// Création de l'objet resultat et retour
Pc resultat(ram,capacite,proc);
return resultat;
}
void Pc::afficher()
{
cout << m_ram << "ram " << m_capacite << "capacite " << m_proc << " processeur " << endl;
cout<<endl;
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| main :
#include <iostream>
#include "op.h"
using namespace std;
int main()
{
Pc pc1(2, 250, 29), pc2(2, 20, 70);
Pc resultat;
pc1.afficher();
pc2.afficher();
resultat = pc1 + pc2;
resultat.afficher();
return 0;
} |
je souhaiterai donc faire 10 + pc2 par exemple , ( c'est juste pour savoirrr le faire car dans le prog ça sert pas a grand chose .
mrci pour votre aide