Sari la conținut

[Programarea Orientata Pe Obiecte - C++] Introducere in Supraincarcarea Operatorilor


Postări Recomandate

  • Moderators
Postat

** Obiective ** 

Prezentarea Conceptului de Supraincarcare a Operatorilor 

** Supraincarcarea Operatorilor ** 

Supraincarcarea Operatorilor reprezinta un mecanism strict C++ , ce ne permite sa efectuam diverse operatiuni asupra obiectelor . Toti operatori pot fi supraincarcati , cu exceptia : 

  •  operatorul "sizeof" ;
  •  operatorul de rezolutie ("::") ; 
  •  operatorul "typeid" ;
  •  operatorul "ternary" ("? :") ;
  •  operatorul de selectie (". , .*") .

De asemenea , nu putem declara/modifica noi versiuni de operatori (de exemplu , sa declaram operator**(int) pentru ridicarea la puterea a 2) sau sa intervenim asupra prioritati fata de alt operator , asociativitati sau cardinalitatii . 

** O Mica Demonstratie ** 

// user.h 

class User{
// restu codului
  
 /// Operatori 
void operator+(int nrPosts); // Supraincarcam operatorul "+"  
}

  

// user.cpp 

// La fiecare insumare a obiectului , vom mari numarul de posturi 

void User::operator+(int nrPosts)
{
	this->nrPosts += nrPosts; // Insumam Numarul de Posturi  
}
// entrypoint.cpp


#include "User.h" // Includem Clasa de Utilizatori 


int main()
{
	User user1("Alin", "alin@gmail.com", "alipassword"); // Apelam Constructor Default (Implicit)

	user1 + 10; // ADAUGAM 10 POSTURI ASUPRA OBIECTULUI !! 

	user1 + 20; // MAI ADAUGAM INCA 20 DE POSTURI 


	// IN TOTAL -- 30
	objectToString(user1); // Afisam Obiectul dintr-o functie global cu eticheta de prieten 

}

NOTA** : IN TUTORIALELE CE URMEAZA , VOM INTELEGE & APROFUNDA SUBIECTUL DE SUPRAINCARCARE !! 

Vizitator
Acest topic este acum închis pentru alte răspunsuri.
  • Navigare recentă   0 membri

    • Nici un utilizator înregistrat nu vede această pagină.
×
×
  • Creează nouă...

Informații Importante

Termeni de Utilizare & Politică Intimitate