Bonjour a tous, j'ai un petit probleme avec ma conception des exceptions.
J'ai une classe CException avec un constructeur paramétré :
J'ai ensuite une hiérarchie de classe dérivée de CException en fonction de l'exception relevée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Le probleme est que si je veux lever une exception CExceptionFileOpen par exemple avec comme parametre le nom du fichier :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Le compilateur me dit que CExceptionFileOpen n'a pas de constructeur avec un const std::string &, pourtant la classe de base (CException) contient ce type de constructeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
Je peux corriger ce probleme en implémentant le constructeur paramétré dans chaque classe dérivée mais y a t'il une meilleure solution 'orienté objet' ?
D'après mes recherches, il n'y a pas d'autres solutions mais peut etre que je n'ai pas trouvé.
Merci

 

 
		
		 
         
 

 
			
			

 Héritage de constructeurs
 Héritage de constructeurs
				 Répondre avec citation
  Répondre avec citation

 
  
  
 
 
			 
   
 

 
				 .
.

 A méditer: La solution la plus simple est toujours la moins compliquée
A méditer: La solution la plus simple est toujours la moins compliquée
Partager