Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //smeureanu4
- #include<iostream>
- using namespace std;
- class Medicament {
- protected:
- char* denumire;
- float pret;
- public:
- friend ostream& operator<<(ostream &iesire, Medicament &medicament);
- Medicament() {
- this->denumire = NULL;
- this->pret = 0;
- }
- Medicament(const char denumire[], float pret){
- this->denumire = new char[strlen(denumire) + 1];
- strcpy(this->denumire, denumire);
- if (pret > 0) {
- this->pret = pret;
- }
- else
- pret = 0;
- }
- void setDenumire(const char denumire[]) {
- if (denumire != NULL) {
- delete[] this->denumire;
- this->denumire = new char[strlen(denumire) + 1];
- strcpy(this->denumire, denumire);
- }
- else {
- this->denumire = NULL;
- }
- }
- void setPret(float pret) {
- if (pret > 0) {
- this->pret = pret;
- }
- }
- Medicament &operator=(Medicament &medicament) {
- if (medicament.denumire != NULL) {
- this->denumire = new char[strlen(medicament.denumire) + 1];
- strcpy(this->denumire, medicament.denumire);
- }
- else {
- this->denumire = NULL;
- }
- if (medicament.pret > 0) {
- this->pret = medicament.pret;
- }
- return *this;
- }
- };
- ostream& operator<<(ostream &iesire, Medicament &medicament) {
- iesire << "**********************"<< endl;
- iesire << "Denumire produs: " << medicament.denumire << endl;
- iesire << "Pretul produsului: " << medicament.pret << endl;
- return iesire;
- }
- int main() {
- Medicament nurofen("Nurofen", 11.25f);
- Medicament aspirina = nurofen;
- aspirina.setDenumire("Aspirina");
- aspirina.setPret(4.5f);
- Medicament bixtonim("Bixtonim", 8.2f);
- {
- Medicament temp;
- temp = nurofen;
- cout << temp << endl;
- }
- cout << nurofen << endl;
- cout << aspirina << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement