Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ag Viajes HPP
Ag Viajes HPP
#define _AGVIAJES_HPP_
#include "cliente.hpp"
#include "paquete.hpp"
#include <deque>
#include <vector>
#include <fstream>
namespace bblProgII{
class AgViajes{
private:
struct Nodo1;
struct Nodo1{
PNodo1 sig;
Paquete paquete;
};
struct Nodo2;
struct Nodo2{
PNodo2 sig;
Cliente cliente;
int num_reservas;
};
PNodo1 paquetes;
PNodo2 clientes;
void destruir_paquetes();
void destruir_clientes();
public:
~AgViajes();
//estarán vacías.
AgViajes();
//recibido como parámetro. Nótese que en el nuevo objeto construido, los enlaces a los
paquetes reservados por
//los clientes deberán ser reajustados a la nueva lista de paquetes duplicada en el nuevo
objeto.
//Nótese que en la nueva información del objeto, los enlaces a los paquetes reservados
por los clientes deberán
//de datos, entonces ok tomará el valor false, en otro caso tomará el valor true. Si el
número de plazas o el precio
//datos, entonces ok tomará el valor false, en otro caso tomará el valor true. Si el dinero
de un determinado
//en el fichero de clientes cuyo nombre recibe como parámetro. El formato del fichero es
como se indicó
//y un código de paquete (cod) como parámetros, y si ambos existen, entonces añadirá (a
continuación de las ya
//existentes) al cliente una nueva reserva para dicho paquete y ok tomará el valor true. Si
no existe un cliente
//con dicho nombre, o no existe dicho paquete turístico, entonces ok tomará el valor
false.
//Recibe un nombre de
//(cod), y en ese caso, eliminará dicha reserva y ok tomará el valor true. Si no existe un
cliente con dicho nombre,
//parámetro (dinero >= 0), entonces lo añadirá (con reservas nulas) al final de la lista de
clientes y ok tomará el
//valor true. En otro caso, entonces ok tomará el valor false.
//el código no es vacío y los valores recibidos como parámetros (plazas >= 0 && precio >=
0), entonces lo
void nuevo_paquete(const string& cod, int plazas, int precio, bool& ok);
//Recibe en el parámetro
//cola de comentarios y ok tomará el valor true. En otro caso, entonces ok tomará el valor
false.
};
#endif