Documente Academic
Documente Profesional
Documente Cultură
#include <iostream>
#include <string.h>
#include <crtdbg.h>
using namespace std;
class Medicament {
int cod_medicament;
char* denumire_medicament;
float pret_medicament;
public:
Medicament()
{
cod_medicament = 0;
denumire_medicament = new char[strlen("Medicament") + 1];
strcpy(denumire_medicament, "nedenumit");
pret_medicament = 0.0;
cout << "S-a apelat constructorul fara parametri." << endl;
}
Medicament(int cod_medicament) : cod_medicament(cod_medicament)
{
denumire_medicament = new char[strlen("Medicament") + 1];
strcpy(denumire_medicament, "nedenumit");
pret_medicament = 0.0;
cout << "S-a apelat constructorul cu 1 parametru." << endl;
}
Medicament(int cod_medicament,
const char* denumire_medicament,
float pret_medicament)
{
this->cod_medicament = cod_medicament;
this->denumire_medicament = new char[strlen(denumire_medicament) + 1];
strcpy(this->denumire_medicament, denumire_medicament);
this->pret_medicament = pret_medicament;
cout << "S-a apelat constructorul cu 3 parametri." << endl;
}
~Medicament()
{
delete[] denumire_medicament;
cout << "S-a apelat destructorul." << endl;
}
void afiseaza_medicament()
{
cout << cod_medicament << " " << denumire_medicament << " " <<
pret_medicament << endl;
}
};
int main()
{
Medicament m1;
Medicament m2(105);
Medicament m3(107, "coldrex", 17.5);
Medicament m;
m.afiseaza_medicament();
float v;
cout << "Valoare adaugata:";
cin >> v;
m.modifica_pret_medicament(v);
m.afiseaza_medicament();
Medicament nurofen;
nurofen.setdenumire("Nurofen");
nurofen.afiseaza_medicament();
nurofen.setpret(10.5);
nurofen.afiseaza_medicament();
}