Bonjour!

Je suis en train de coder un petit programme de gestion d'une bibliothèque.

Ma class Bibliothèque contient un tableau d'objets Ouvrage : listeOuvrages

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
#ifndef _BIBLIOTHEQUE_
#define _BIBLIOTHEQUE_
/**********************************************/
 
#include <vector>
#include "Ouvrage.h"
#include "Abonne.h"
 
class Bibliotheque{
private:
	std::vector<Ouvrage*> listeOuvrages;                   //
	std::vector<Abonne*> listeAbonnes;
public:
 
	Bibliotheque();
	void ajoutOuvrage(Ouvrage *ouvrage);			
	Ouvrage getOuvrage(std::string titre);			//
	void ajoutAbonne(Abonne *abonne);
	Abonne getAbonne (int id) const ;
	void Emprunter(std::string titre, int id);
	void rendre(int id);
	void info() /*const*/ ;
	~Bibliotheque();
};
 
/**********************************************/
#endif
ma class Bibliothèque contient une méthode getOuvrage qui prend en argument un titre d'ouvrage et qui renvoie l'ouvrage correspondant s'il existe:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
Ouvrage Bibliotheque::getOuvrage(std::string titre){
		if (listeOuvrages.size() == 0){
			std::cout << "Il n'y a aucun ouvrage dans la bibliothèque." << std::endl;
			// QUE PUIS-JE RETOURNER?
		}
		else{
			for (int i=0; i<listeOuvrages.size();i++){
				if (listeOuvrages[i]->getTitre() == titre){
					std::cout << "Ouvrage envoyé." << std::endl;
					return *listeOuvrages[i];
				}
				else{
					std::cout << "L'ouvrage n'est pas dans la bibliothèque." << std::endl;
					// QUE PUIS-JE RETOURNER?
				}
			}
		}
	}
Cette méthode doit renvoyer un objet ouvrage.
Lorsque mon tableau d'Ouvrages contient au moins 1 élément qui correspond à la demande, la méthode fonctionne parfaitement.
Mais quand le tableau est vide ou alors que l'Ovrage demandé n'est pas dans le tableau d'Ouvrages qu'est ce que je peux retourner? (Dans le code ci-dessus, se référer au commentaire QUE PUIS-JE RETOURNER?)

Merci beaucoup par avance pour votre aide

Letthieum