Práctica Final. Rutas Aéreas.
paises.h
Ir a la documentación de este archivo.
1 
10 #ifndef PRACTICAFINAL_PAISES_H
11 #define PRACTICAFINAL_PAISES_H
12 
13 #include <set>
14 #include "pais.h"
15 using namespace std;
16 
23 class Paises {
24 private:
28  set<Pais> datos;
29 
30 public:
34  Paises(){}
35 
40  Paises(const set<Pais> &paises);
41 
46  int size() const;
47 
52  const set<Pais>& getDatos() const;
53 
58  void insertar(const Pais &pais);
59 
64  void eliminar(const Pais &pais);
65 
69  void clear();
70 
76  class iterator{
77  private:
81  set<Pais>::iterator it;
82  public:
87 
92  iterator(set<Pais>::iterator i){it = i;}
93 
98  const Pais& operator*() {return (*it);}
99 
105  ++it;
106  return *this;
107  }
108 
114  --it;
115  return *this;
116  }
117 
123  bool operator==(const iterator &i) const {return it == i.it;}
124 
130  bool operator!=(const iterator &i) const {return it != i.it;}
131 
132  friend class Paises;
133  };
134 
139  iterator begin() const{return iterator(datos.begin());}
140 
145  iterator end() const{return iterator(datos.end());}
146 
152  iterator find(const Pais &pais) const;
153 
159  iterator find(const Punto &punto) const;
160 
161  friend ostream& operator<<(ostream &os, const Paises &paises);
162  friend istream& operator>>(istream &is, Paises &paises);
163 };
164 
171 ostream& operator<<(ostream &os, const Paises &paises);
172 
179 istream& operator>>(istream &is, Paises &paises);
180 
181 #endif //PRACTICAFINAL_PAISES_H
TDA Pais.
Definition: pais.h:23
Clase iterator.
Definition: paises.h:76
bool operator!=(const iterator &i) const
Sobrecarga del operador !=.
Definition: paises.h:130
iterator & operator--()
Sobrecarga del operador –.
Definition: paises.h:113
iterator(set< Pais >::iterator i)
Constructor de la clase.
Definition: paises.h:92
iterator()
Constructor por defecto de la clase.
Definition: paises.h:86
iterator & operator++()
Sobrecarga del operador ++.
Definition: paises.h:104
bool operator==(const iterator &i) const
Sobrecarga del operador ==.
Definition: paises.h:123
const Pais & operator*()
Sobrecarga del operador *.
Definition: paises.h:98
TDA Paises.
Definition: paises.h:23
iterator begin() const
Devuelve un iterador al principio del conjunto.
Definition: paises.h:139
iterator find(const Pais &pais) const
Busca un pais en el conjunto.
Definition: paises.cpp:39
Paises()
Constructor por defecto de la clase.
Definition: paises.h:34
iterator end() const
Devuelve un iterador al final del conjunto.
Definition: paises.h:145
TDA Punto.
Definition: punto.h:23
Fichero cabecera del TDA Pais.
istream & operator>>(istream &is, Paises &paises)
Sobrecarga del operador << para la clase Paises.
Definition: paises.cpp:68
ostream & operator<<(ostream &os, const Paises &paises)
Sobrecarga del operador >> para la clase Paises.
Definition: paises.cpp:54