You are on page 1of 2

#include<iostream>

#include<string>
#include<map>
#include<set>
#include<vector>
#include<list>
using namespace std;

class Eveniment {
private:
int nrPers = 0;
string locatie;
public:
Eveniment(){}
Eveniment(int nrPers, string locatie) {
this->nrPers = nrPers;
this->locatie = locatie;
}
Eveniment(const Eveniment& e) {
this->nrPers = e.nrPers;
this->locatie = e.locatie;
}
Eveniment& operator=(const Eveniment& e) {
this->nrPers = e.nrPers;
this->locatie = e.locatie;
return *this;
}
friend ostream& operator<<(ostream& out, const Eveniment& e) {
out << "\nNr pers eveniment: " << e.nrPers;
out << "\nLocatie eveniment: " << e.locatie;
return out;
}

friend bool operator<(const Eveniment& e1, const Eveniment& e2);


};

bool operator<(const Eveniment& e1, const Eveniment& e2) {


if (e1.nrPers < e2.nrPers)
return true;
return false;
}

void main()
{
//STL vector
vector<int> v;
v.push_back(10);
v.push_back(20);
v.push_back(15);

cout << "Afisare elemente vector folosind iterator\n";


vector<int>::iterator itVector;
for (itVector = v.begin(); itVector != v.end(); itVector++)
cout << *itVector << " ";

//STL list
list<double> l;
l.push_back(12.5);
l.push_back(30.9);
l.push_back(0.5);
l.push_front(30);

cout << "\n\nAfisare elemente list folosind iterator\n";


list<double>::iterator itList;
for (itList = l.begin(); itList != l.end(); itList++)
cout << *itList << " ";

//STL set
set<string> s;
s.insert("Monica Ionescu");
s.insert("Tudor Maria");
s.insert("Ion Vasilescu");
s.insert("Ion Vasilescu");

cout << "\n\nAfisare elemente set\n";


set<string>::iterator itSet;
for (itSet = s.begin(); itSet != s.end(); itSet++)
cout << *itSet << " ";

//metoda cautare in set


itSet = s.find("Tudor Maria");
if (itSet != s.end())
cout << "\n\nS-a gasit numele in set";
else
cout << "\n\nNumele cautat nu exista in set";

//STL Map
map<int, string> m;
m[0] = "Tudor";
m[1] = "Maria";
m[2] = "Marcel";

cout << "\n\nAfisare map cu iterator\n";


map<int, string>::iterator itMap;
for (itMap = m.begin(); itMap != m.end(); itMap++)
cout << itMap->first << " " << itMap->second << " ";

//STL set cu Eveniment


set<Eveniment> setEvenimente;
Eveniment e1(10, "Locatie1");
Eveniment e2(20, "Locatie2");
Eveniment e3(30, "Locatie3");
setEvenimente.insert(e1);
setEvenimente.insert(e2);
setEvenimente.insert(e3);
//incercare adaugare acelasi eveniment de 2 ori
setEvenimente.insert(e1);

cout << "\nAfisare set ce stocheaza elemente de tip Eveniment";


set<Eveniment>::iterator it;
for (it = setEvenimente.begin(); it != setEvenimente.end(); it++)
cout << *it;
}

You might also like