Bonjour,
J'ai une question toute bête :
J'ai deux classes totalement indépendantes mais qui doivent utiliser la même méthode. Or ces deux classes n'ont pas de mère en commun..
Comment faire pour ne pas avoir a reécrire deux fois la méthodes..
Thanks
 
			
			






 
			
			
			
			 
			
				
 Partage de méthodes entre deux classe sans lien de parenté?
 Partage de méthodes entre deux classe sans lien de parenté?
				
				
						
							
							
						
						
				Bonjour,
J'ai une question toute bête :
J'ai deux classes totalement indépendantes mais qui doivent utiliser la même méthode. Or ces deux classes n'ont pas de mère en commun..
Comment faire pour ne pas avoir a reécrire deux fois la méthodes..
Thanks
 
 
				
				
						
						
				Créer une 3eme classe qui implémente cette méthode
Faire dériver ces 2 classes de cette classe de base
Raymond
Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi
CafuroCafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
e-verbeUn logiciel de conjugaison des verbes de la langue française.
Ma page personnelle sur DVP.
 
			
			






 
			
			
			
			 
			
				
 
 
				
				
						
						
				Merci
En fait j'y avait dèja penser mais bon faire une classe pour une seule fonction. Je voulas en fait savoir si il y avait pas d'autre manière.MAis c'est ce que je ferai s'il y a vraiment rien d'autre..
Encore merki
Raymond
Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi
CafuroCafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
e-verbeUn logiciel de conjugaison des verbes de la langue française.
Ma page personnelle sur DVP.
 
 
				
				
						
						
				C'est quoi cette méthode que tu veux utiliser ? Une méthode de classe ou pas ?
C'est censé représenter quoi ta conception?
 
 
				
				
						
						
				Cette fonction doit elle accéder à des données membres ?
En fait, donne nous plus de détails sur ton contexte.
"Never use brute force in fighting an exponential." (Andrei Alexandrescu)
Mes articles dont Conseils divers sur le C++
Une très bonne doc sur le C++ (en) Why linux is better (fr)
 
 
				
				
						
						
				Comme dit Davidbrcz, il nous faudrait plus de détails, sinon l'héritage est pas forcement la meilleur solution, tu peux très bien faire une structure dans un autre fichier et mettre la methode en static.
(bien sur je te laisse faire les includes).
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
20
21
22
23
 
 
				
				
						
						
				Pas dériver. Composer. Sinon on ne respecte pas le principe de substitution de Liskov, ce qui peut entrainer un non respect du principe ouvert/fermé, ce qui est le signe d'une architecture qui, un jour ou l'autre, sombrera dans le chaos. L'héritage est réservé à la définition de sous-types, c'est à dire de types dont le comportement est identique de l'extérieur à celui du type parent. L'héritage de circonstance ne rentre pas dans cette catégorie.
Ca, c'est du java.NET
Ca, c'est du C++
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
[FAQ des forums][FAQ Développement 2D, 3D et Jeux][Si vous ne savez pas ou vous en êtes...]
Essayez d'écrire clairement (c'est à dire avec des mots français complets). SMS est votre ennemi.
Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Café. C'est dépassé tout ça.
Et si vous êtes sages, vous aurez peut être vous aussi la chance de passer à la télé. Ou pas.
Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.
 
 
				
				
						
						
				eheh sympa ta méthode
Par contre c'est pas du Java.NET la mienne(en plus j'en ai jamais fait
), c'est une technique de levelisation que j'ai lu dans "Large Scale C++ : Software Design". Finalement les deux méthodes se rapproche assez, le but étant de mettre la méthode dans un endroit ou les 2 class peuvent acceder sans qu'il y ai une relation entre ces 2 class.
 
			
			






 
			
			
			
			 
			
				
 suite
 suite
				
				
						
						
				oula beaucoup de réponses...merci à tous...
en fait c'est une méthode qui enlève les espaces avant et après dans un string car il y a de la saisie dans mon programme. Or j'en est besoin dans deux classes qui non aucune parenté. mais bon utiliser une "mini-classe" mère juste pour une fonction, je trouve ça un peu excessif. Surtout que la fonction, grâce à la classe <string> est assez courte à écrire. J'aurais put aussi dérivé cette même classe <string> mais bon pour ajouter une seule méthode!
L'alternative avec les structures de "leirbag" et "Emmanuel Deloget"est une bonne solution pour éviter le copiage de code!!
Donc c'est ce que je vais faire, je pense...
 
 
				
				
						
						
				Oui, dans ce cas, un namespace Tools est la bonne solution.
"Never use brute force in fighting an exponential." (Andrei Alexandrescu)
Mes articles dont Conseils divers sur le C++
Une très bonne doc sur le C++ (en) Why linux is better (fr)
 
			
			






 
			
			
			
			 
			
				
 suite
 suite
				
				
						
						
				ok sujet résolu..
Sympa le site "Why linux is better (fr)"
 
 
				
				
						
						
							
						
				Tout à fait. Ceci dit, l'un crée une classe Tools, qui reçoit donc un constructeur, un constructeur par copie, un destructeur. Cette classe peut être instanciée, mais elle ne représente aucun concept, aucune abstraction. Son intérêt est donc assez minime. C'est cependant la seule manière de créer des "fonctions libres" en Java ou en C#.
L'autre définit simplement une fonction - un algorithme, en fait - qui peut être réutilisé dans d'autres modules. Cette approche est consistante avec l'approche de la librairie standard (cf <algorithm>, <functional>, etc.)
[FAQ des forums][FAQ Développement 2D, 3D et Jeux][Si vous ne savez pas ou vous en êtes...]
Essayez d'écrire clairement (c'est à dire avec des mots français complets). SMS est votre ennemi.
Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Café. C'est dépassé tout ça.
Et si vous êtes sages, vous aurez peut être vous aussi la chance de passer à la télé. Ou pas.
Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.
Partager