Référence à une fonction d'une autre classe - C++ - Programmation
Marsh Posté le 31-07-2003 à 08:47:00
C bizzard, j'ai déjà eu ce warning, mais je me souvient plus pkoi. T'aurais un peu plus de code autour de:
Code :
|
?
Marsh Posté le 31-07-2003 à 09:19:30
sans vouloir fair ele lourd, il se pourrait aussi que tu doives revoir la conception objet de ton code.
Qu'a besoin de faire exactement les objets qui veulent accéder à TA ?
Ce code :
Code :
|
pourrait etre remplacer par une methode find() de la classe DATA non ?
Code :
|
Marsh Posté le 31-07-2003 à 09:55:08
euh si tu renvoie un const &, ben tu peux avoir qu'une const &. pareil pour find, qui est une opération const et donc un const_iterator suffit
Marsh Posté le 31-07-2003 à 14:42:51
Joel F a écrit : sans vouloir fair ele lourd, il se pourrait aussi que tu doives revoir la conception objet de ton code. |
La classe DATA permet de stocker dans des maps les données d'un fichier XML.
Voici ma déclaration de classe (avec uniquement ce qui nous intéresse):
Code :
|
Une fois que je fais appel à DATA, je remplis la map TA avec toutes les informations nécessaires.
Dans une autre classe, disons ANALYSE, je dois utiliser les données contenues dans TA.
Voici comment je procéde (Début de l'algo):
Code :
|
De même ensuite j'effectue une recherche avec find() dans la map AJ...
Je parcoure donc successivement les maps imbriquées les unes dans les autres.
Je ne sais donc pas si j'ai besoin de définir dans ma classe DATA des fonctions de recherche, etc...
Marsh Posté le 31-07-2003 à 14:47:18
Ca sera toujour splus propre que de faire ca ....
reflechis mieux a ton approche objet.
Marsh Posté le 31-07-2003 à 14:49:38
VisualC++ a écrit : enfin objet avec des struct |
struct est class c pareil en c++, c juste con d'utiliser deux mots clef pour désigner la même chose
Marsh Posté le 31-07-2003 à 14:49:39
Certes je me comprends .... tu remarqueras que j'avais corrigé
Marsh Posté le 31-07-2003 à 14:50:18
VisualC++ a écrit : enfin objet avec des struct |
Je vois pas où est le problème... J'ai pu lire tout partout que struct est équivalent à une classe, sauf que tout est par défaut public
Mais là ils sont précisés, donc c'est pareil, non?
Marsh Posté le 31-07-2003 à 14:51:16
Oui mais c'est moche.
Reserve l'utilisation des struct au structure de données ne contenant que des memebres publiques, ca rendra les choses clair++
Marsh Posté le 31-07-2003 à 14:51:49
Joel F a écrit : Ca sera toujour splus propre que de faire ca .... |
Je ne comprends pas en quoi ce que je fais ne respecte pas la POO...
Alors quelles sont les fonctions que je devrais rajouter dans ma classe DATA pour la respecter?
Marsh Posté le 31-07-2003 à 14:52:00
Bah de mon experience perso y a des choses que les struct supporte pas suivant les compilo et OS (comme un constructeur/destructeur cequi est bien genant pour une appelation dite objet)
Enfin cela n engage que moi
Marsh Posté le 31-07-2003 à 14:54:38
VisualC++ a écrit : Bah de mon experience perso y a des choses que les struct supporte pas suivant les compilo et OS (comme un constructeur/destructeur cequi est bien genant pour une appelation dite objet) |
Travaillerais tu avec le compilo qui a inspiré ton pseudo? C pas un vrai compilo c++!
Marsh Posté le 31-07-2003 à 14:55:07
haazheel a écrit : |
respecte au moins la FCC (forme canonique de Coplien)
Constructeur par défaut
Constructeur de recopie
destructeur
operateur d'affectation ...
et puis ecris juste class a la place de struct
Marsh Posté le 31-07-2003 à 14:56:19
LetoII a écrit : |
Entre autre mais les pb c plutot avec gcc
Marsh Posté le 31-07-2003 à 14:57:03
VisualC++ a écrit : |
bah GCC == 0 problem désolé , le GCC 3.3 rulezdaworld
Marsh Posté le 31-07-2003 à 14:58:35
j ai pas dit que le code au dessus pose pb la avec gcc, mais une structure avec un constructeur gcc compile pas (ver 3.2 et 3.3 sous solaris en 64bits par exemple ... teste y a moins de 15 jours)
Marsh Posté le 31-07-2003 à 14:59:00
Joel F a écrit : |
Mis à part struct, que je viens de changer, ma classe répond au reste...
Mais tu me conseillais d'ajouter une fonction find(), qu'est-ce qu'il faudrait que je rajoute en plus?
Marsh Posté le 31-07-2003 à 15:00:13
ben
Code :
|
Marsh Posté le 31-07-2003 à 15:14:03
Ca ok, mais comme je l'ai mentionné plus haut, j'ai des maps qui sont imbriquées les unes dans les autres...
Est-ce que je dois créer une méthode find() pour chacun d'entre elles?
Marsh Posté le 31-07-2003 à 15:17:01
Bah a toi d'ecrire un algo de recherche propre la dedans.
Marsh Posté le 31-07-2003 à 15:21:25
Joel F a écrit : Bah a toi d'ecrire un algo de recherche propre la dedans. |
Ouais, bah je l'ai déjà écrit dans les classes qui en ont besoin... Donc je vais en rester là...
Merci pour tout!!
Marsh Posté le 31-07-2003 à 04:32:17
Salut tout le monde,
voici ma question:
J'ai la classe DATA suivante (largement simplifiée, mais le principe est là):
Je dois accéder à TA depuis une autre classe, c'est donc la raison pour laquelle j'ai créé la fonction m_TA()
Est-ce que le code suivant est correct?
Ce code fonctionne très bien, mais j'ai le warning suivant à la compilation:
Un temporaire a été utilisé pour initialiser 'TA'
Peut-être est-ce que je pars (encore) en vrille...
Merci d'avance!!
---------------
Another .Net Blog