Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4737 connectés 

 


 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  19  20  21  22  23  24
Auteur Sujet :

BlaBla@Programmation

n°375789
drasche
Posté le 29-04-2003 à 11:35:12  profilanswer
 

Reprise du message précédent :


non, l'héritage en VB n'existe pas.  A la place, ils ont inventé ce qu'ils appellent l'implémentation et là je te fais une démo rien que pour toi (juste pour bien te montrer que c'est pourri):
 
tu crée une classe dite Ancetre qui ressemble à ça:

Code :
  1. Option Explicit
  2. ' Valeur privée de la propriété
  3. Private ppviValue As Integer
  4. ' Définition de la propriété
  5. Public Property Get Value() As Integer
  6.     Value = ppviValue
  7. End Property
  8. Public Property Let Value(ByVal X As Integer)
  9.     ppviValue = X
  10. End Property


 
Tu veux "hériter" de cette classe?  Voilà la classe descendant:

Code :
  1. Option Explicit
  2. ' Demande l'implémentation de ancetre
  3. Implements ancetre
  4. ' Déclaration de l'objet ancêtre
  5. Dim oAncetre As ancetre
  6. ' Constructeur
  7. Private Sub Class_Initialize()
  8.     ' Crée une instance de l'ancêtre
  9.     Set oAncetre = New ancetre
  10. End Sub
  11. ' Destructeur
  12. Private Sub Class_Terminate()
  13.     ' Détruit l'instance de l'ancêtre
  14.     Set oAncetre = Nothing
  15. End Sub
  16. ' Définition de la propriété publique
  17. Public Property Get Value() As Integer
  18.     Value = ancetre_Value
  19. End Property
  20. Public Property Let Value(ByVal X As Integer)
  21.     ancetre_Value = X
  22. End Property
  23. ' Définition rendue obligatoire par le compilateur de la propriété ancêtre
  24. '    pour assurer le polymorphisme
  25. Private Property Let ancetre_Value(ByVal X As Integer)
  26.     oAncetre.Value = X
  27. End Property
  28. Private Property Get ancetre_Value() As Integer
  29.     ancetre_Value = oAncetre.Value
  30. End Property


 
En gros, par rapport à n'importe quel langage de programmation OO bien constitué, tu es obligé d'instancier un ancêtre et de faire une double déclaration pour chaque propriété, même si tu utilises celle de l'ancêtre plutôt que de modifier son comportement.  En C++, tu n'as RIEN à écrire en ce qui concerne la propriété.
 
Voilà c'est brutal, désolé pour les spasmes ou les tics nerveux que ça pourrait provoquer chez les âmes sensibles, je laisse le soin aux programmeurs C++ de lui montrer l'équivalent C++ qui est beaucoup plus compact et simple à écrire :D


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
mood
Publicité
Posté le 29-04-2003 à 11:35:12  profilanswer
 

n°375790
Harkonnen
Un modo pour les bannir tous
Posté le 29-04-2003 à 11:35:42  profilanswer
 

mareek a écrit :

[:meganne] heuuuuu.... comment te dire ça sans te vexer ? tu crois pas que tu te gourres un peu ?


Quand je parle de sanction, je veux dire écran bleu ! Au moins, tu sais que t'as fait une connerie et/ou que t'as codé comme un porc ! :d


---------------
J'ai un string dans l'array (Paris Hilton)
n°375791
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 29-04-2003 à 11:36:28  profilanswer
 

Mara's dad a écrit :


C'est pas que çà cause pas. Justement, çà cause beaucoup trop ! Une vrai gonzesse ce Java :(


Bin pas forcément. OK, pour les lectures/écritures en console, c'est p'têt un peu plus verbeux qu'un printf(), m'enfin sorti de ça, je trouve plus simple de faire Integer.toString(5) que

Code :
  1. #import <stdlib.h>
  2. char *a = new char[2];
  3. a = itoa(5);


Et encore, j'ai pas fait de malloc et je parle pas du fait qu'il faille allouer 2 caractères passk'il en faut un pour le \0 de fin de chaîne.
 
Comment j'trolle trop fort, aujourd'hui :o


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°375792
Cherrytree
cn=?
Posté le 29-04-2003 à 11:36:30  profilanswer
 

mareek a écrit :

de toute façon ça compte pas, ce n'était qu'une surcouche du dos.


De la crème solaire ? Ou des écailles ?


---------------
Le site de ma maman
n°375794
backdafuck​up
Back to da old skool
Posté le 29-04-2003 à 11:37:09  profilanswer
 


 :jap:  
 
Bien bien, tu m'as appris quelque chose...

n°375795
Cherrytree
cn=?
Posté le 29-04-2003 à 11:37:26  profilanswer
 

Marnie a écrit :

Très juste. Décidément faut qu'on achète ce deuxième bouquin.


Je crois que je vais l'acheter aujourd'hui.


---------------
Le site de ma maman
n°375796
drasche
Posté le 29-04-2003 à 11:37:55  profilanswer
 

Cherrytree a écrit :

De la crème solaire ? Ou des écailles ?


des écailles, quand on voit comment ça partait en couille :o


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°375797
chrisbk
-
Posté le 29-04-2003 à 11:38:19  profilanswer
 

Taiche a écrit :


Bin pas forcément. OK, pour les lectures/écritures en console, c'est p'têt un peu plus verbeux qu'un printf(), m'enfin sorti de ça, je trouve plus simple de faire Integer.toString(5) que

Code :
  1. #import <stdlib.h>
  2. char *a = new char[2];
  3. a = itoa(5);


Et encore, j'ai pas fait de malloc et je parle pas du fait qu'il faille allouer 2 caractères passk'il en faut un pour le \0 de fin de chaîne.
 
Comment j'trolle trop fort, aujourd'hui :o


 
oue ben faudra que tu m'explique l'interet de l'alloc dans ton bout de code [:meganne] (et tu as fait un malloc mais bon)
 
(J'aime bien le #import aussi :D :D)


Message édité par chrisbk le 29-04-2003 à 11:38:58
n°375798
les_valseu​ses
Posté le 29-04-2003 à 11:38:51  profilanswer
 

mareek a écrit :

Je pense que tous ceux qui sont obligés de coder en VB s'accorderont avec moi pour te dire ceci:
[:the real moins moins]


+1
je hais le VB, je suis obligé d'en faire pour mon projet de stage en access.....et y'a pas a chier c'est a mille lieux du C/C++/Java.....

n°375799
samuelp
Posté le 29-04-2003 à 11:39:23  profilanswer
 

les_valseuses a écrit :


+1
je hais le VB, je suis obligé d'en faire pour mon projet de stage en access.....et y'a pas a chier c'est a mille lieux du C/C++/Java.....


 
Si t'aimes pas tu peux utiliser autre chose non ?

mood
Publicité
Posté le 29-04-2003 à 11:39:23  profilanswer
 

n°375800
backdafuck​up
Back to da old skool
Posté le 29-04-2003 à 11:40:42  profilanswer
 

samuelp a écrit :


 
Si t'aimes pas tu peux utiliser autre chose non ?


 

Citation :

je hais le VB, je suis obligé d'en faire pour mon projet de stage en access.....et y'a pas a chier c'est a mille lieux du C/C++/Java.....


 
 
quand meme..... lis ce qu'il écrit au moins ! :o

n°375803
mareek
Et de 3 \o/
Posté le 29-04-2003 à 11:42:05  profilanswer
 

Cherrytree a écrit :


De la crème solaire ? Ou des écailles ?

plutot de la gouache en fait [:ddr555]


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°375804
les_valseu​ses
Posté le 29-04-2003 à 11:44:01  profilanswer
 

samuelp a écrit :


 
Si t'aimes pas tu peux utiliser autre chose non ?


2 solutions :
 
1 - demande a mon tuteur de stage de m'écouter et de me laisser du php + mysql (le projet serait deja fini), mais non, MONSIEUR n'aime pas le php......
 
2 - demande a microsoft de remplacer le VBA d'access par du VC++????? (perso j'y crois pas trop, mais bon, ca m'arrangerai...)

n°375806
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 29-04-2003 à 11:44:08  profilanswer
 

chrisbk a écrit :


oue ben faudra que tu m'explique l'interet de l'alloc dans ton bout de code [:meganne] (et tu as fait un malloc mais bon)
 
(J'aime bien le #import aussi :D :D)


Je savais pas que le #import était pas nécessaire [:ddr555]
Pour le malloc(), j'entendais par-là qu'il faut que tu saches combien de décimales comporte ton entier avant de déclarer ton tableau de char. Autant là c'était pas utile avec une constante (sprintf pawa), autant avec une variable c'est vive le sport :o


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°375810
Harkonnen
Un modo pour les bannir tous
Posté le 29-04-2003 à 11:48:20  profilanswer
 

drasche a écrit :

Voilà c'est brutal, désolé pour les spasmes ou les tics nerveux que ça pourrait provoquer chez les âmes sensibles, je laisse le soin aux programmeurs C++ de lui montrer l'équivalent C++ qui est beaucoup plus compact et simple à écrire :D


 

Code :
  1. class ancetre
  2. {
  3.    public:
  4.       ancetre();
  5.       ~ancetre();
  6.    protected:
  7.       int ppiValue;
  8.  
  9.    protected:
  10.       setValue(int);
  11.       int getValue();
  12. }
  13. ancetre::ancetre()
  14. {
  15.    // a la rigueur, on pourrait initialiser ppiValue ici (modifier la signature du constructeur)
  16. }
  17. void ancetre::setValue(int value)
  18. {
  19.    ppiValue = value;
  20. }
  21. int ancetre::getValue()
  22. {
  23.    return ppiValue;
  24. }


 

Code :
  1. class fils : public ancetre
  2. {
  3.    public:
  4.       fils();
  5. }


Message édité par Harkonnen le 29-04-2003 à 11:49:58

---------------
J'ai un string dans l'array (Paris Hilton)
n°375811
backdafuck​up
Back to da old skool
Posté le 29-04-2003 à 11:50:48  profilanswer
 

Harkonnen a écrit :


Code :
  1. class ancetre
  2.   {
  3.        public:
  4.           ancetre();
  5.           ~ancetre();
  6.        protected:
  7.           int ppiValue;
  8.        
  9.        protected:
  10.           setValue(int);
  11.           int getValue();
  12.   }




 
Je comprends pas un truc.
Pourquoi tu mets deux fois protected ? on est obligé de séparer les méthodes et attributs meme s'ils ont le meme type d'accès ? Ou alors c'est juste une question de clarté et de "propreté" de programmation ?

n°375814
Harkonnen
Un modo pour les bannir tous
Posté le 29-04-2003 à 11:51:39  profilanswer
 

backdafuckup a écrit :


 
Je comprends pas un truc.
Pourquoi tu mets deux fois protected ? on est obligé de séparer les méthodes et attributs meme s'ils ont le meme type d'accès ? Ou alors c'est juste une question de clarté et de "propreté" de programmation ?


C'est effectivement une question de clarté. Je préfère séparer attributs et méthodes


---------------
J'ai un string dans l'array (Paris Hilton)
n°375815
samuelp
Posté le 29-04-2003 à 11:51:54  profilanswer
 

les_valseuses a écrit :


2 solutions :
 
1 - demande a mon tuteur de stage de m'écouter et de me laisser du php + mysql (le projet serait deja fini), mais non, MONSIEUR n'aime pas le php......
 
2 - demande a microsoft de remplacer le VBA d'access par du VC++????? (perso j'y crois pas trop, mais bon, ca m'arrangerai...)


 
Si ton tuteur n'est meme pas fichu de te donner le choix c lamentable, c comme si on nous obligeait d'acheter une certaine marque de chaussures...

n°375816
backdafuck​up
Back to da old skool
Posté le 29-04-2003 à 11:52:29  profilanswer
 

samuelp a écrit :


 
Si ton tuteur n'est meme pas fichu de te donner le choix c lamentable, c comme si on nous obligeait d'acheter une certaine marque de chaussures...


 
Moi non plus j'ai pas eu le choix ! MFC obligé...
 
 
edit: harko, merci :jap:


Message édité par backdafuckup le 29-04-2003 à 11:52:53
n°375822
backdafuck​up
Back to da old skool
Posté le 29-04-2003 à 11:54:54  profilanswer
 

bon allez, bon split et bon appétit à tous :hello:

n°375824
les_valseu​ses
Posté le 29-04-2003 à 11:55:19  profilanswer
 

samuelp a écrit :


 
Si ton tuteur n'est meme pas fichu de te donner le choix c lamentable, c comme si on nous obligeait d'acheter une certaine marque de chaussures...


c'est pour que soit disant le projet puisse etre repris par une personne ne connaissant rien a la prog.....mais vu la complexité du truc je suis obligé de mettre du code....VB et des requetes SQL a la con partout, dc le gars qui va reprendre le projet il a interet de s'y connaitre un minimum au moins en SQL.....ou en mysql :sarcastic:

n°375830
Harkonnen
Un modo pour les bannir tous
Posté le 29-04-2003 à 12:01:24  profilanswer
 

backdafuckup a écrit :


 
Moi non plus j'ai pas eu le choix ! MFC obligé...
 
 
edit: harko, merci :jap:


précision à propos de mon code : comme les méthodes setValue et getValue sont déclarées en protected, seules les classes qui héritent d'ancetre y auront accés.
pour que ces méthodes soient visibles de l'extérieur, modifier leur accés en public


---------------
J'ai un string dans l'array (Paris Hilton)
n°375831
polo021
Posté le 29-04-2003 à 12:01:40  profilanswer
 

samuelp a écrit :


 
Si ton tuteur n'est meme pas fichu de te donner le choix c lamentable, c comme si on nous obligeait d'acheter une certaine marque de chaussures...


C'est un peu bizarre ce que tu nous dis la. Je n'ai pas eu le choix non plus. MFC powaaaaaaaa

n°375834
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 29-04-2003 à 12:02:49  profilanswer
 

samuelp a écrit :


Si ton tuteur n'est meme pas fichu de te donner le choix c lamentable, c comme si on nous obligeait d'acheter une certaine marque de chaussures...


 :heink:  
Ca a rien à voir. T'es en stage, garçon, tu fais pas du shopping. Une meilleure analogie serait qu'on t'oblige à fabriquer un certain type de chaussures avec un certain type de matière première et d'outils. Mais après, les godasses, c'est la boîte qui les porte.
Il est "normal" que ce genre de décision soit prise par un chef, c'est un peu son boulot. Alors après, si tu tombes sur un chef qui n'y pane que dalle et qui le reconnaît, tu peux avoir la chance qu'il te demande ton avis. Mais c'est rare.


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°375838
polo021
Posté le 29-04-2003 à 12:03:50  profilanswer
 

Harkonnen a écrit :


pour que ces méthodes soient visibles de l'extérieur, modifier leur accés en public


 
De toute facon comment veux tu qu'une auter classse accede a getvalue?

n°375840
the real m​oins moins
Posté le 29-04-2003 à 12:04:13  profilanswer
 

drasche a écrit :


je viens de m'acheter un portable qui roxe pour 1600? :o
 
(j'ai demandé 256MB de ram en plus :ange:)
 
Et pour 1000 euros, t'as déjà un très bon PC (hormis l'écran plat).
Mettons qu'avec un TFT 17", il te reste assez pour avoir ce que tu demandes, faut juste prendre un bon ventilo, un HD Seagate (c'est les plus silencieux) et éviter la GeForce FX [:ddr555]

merci :)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°375844
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 29-04-2003 à 12:06:11  profilanswer
 

polo021 a écrit :


De toute facon comment veux tu qu'une auter classse accede a getvalue?


En héritant de la classe, par exemple [:spamafote] Dans le code d'Harko, la classe fils qui dérive d'ancetre a accès à getValue().


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°375846
polo021
Posté le 29-04-2003 à 12:07:32  profilanswer
 

Taiche a écrit :


En héritant de la classe, par exemple [:spamafote] Dans le code d'Harko, la classe fils qui dérive d'ancetre a accès à getValue().


entierment d'accord donc que getvalue soit en protected ou en public ca ne change rien.
 
Je sais que je viens de dire une betise mais je veux apprendre!

n°375849
mareek
Et de 3 \o/
Posté le 29-04-2003 à 12:09:58  profilanswer
 

samuelp a écrit :


 
Si ton tuteur n'est meme pas fichu de te donner le choix c lamentable, c comme si on nous obligeait d'acheter une certaine marque de chaussures...

ça t'arrive de poster autre chose que des trolls ?  :heink:


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°375864
Harkonnen
Un modo pour les bannir tous
Posté le 29-04-2003 à 12:24:52  profilanswer
 

polo021 a écrit :


 
De toute facon comment veux tu qu'une auter classse accede a getvalue?


Quand je dis "visible de l'extérieur", je veux dire que la méthode peut être utilisée à partir de l'objet instancié !
 
Si elle est protected, alors seules les classes qui héritent d'ancetre pourront utiliser getValue(). En d'autres termes, si j'instancie une classe fils, je ne pourrais pas utiliser getValue dans l'objet, mais uniquement dans la classe fils.
 
Par contre, si je la déclare en public, je pourrais accéder à getValue() à partir du programme principal.
 

Code :
  1. int main(int, char**)
  2. {
  3.    fils theFils();
  4.    int value;
  5.  
  6.    // si getValue est protected, alors ceci ne fonctionnera pas
  7.    // mais ça fonctionnera si getValue est public  
  8.    value = theFils.getValue();
  9. }


---------------
J'ai un string dans l'array (Paris Hilton)
n°375865
lorill
Posté le 29-04-2003 à 12:24:57  profilanswer
 

mareek a écrit :

ça t'arrive de poster autre chose que des trolls ?  :heink:  


oui, quand il dit hello  [:sinclaire]

n°375867
samuelp
Posté le 29-04-2003 à 12:26:16  profilanswer
 

mareek a écrit :

ça t'arrive de poster autre chose que des trolls ?  :heink:  


 
Tu lis tous mes posts ?  
 
Non, je sais etre serieux quand il le faut.

n°375871
Harkonnen
Un modo pour les bannir tous
Posté le 29-04-2003 à 12:30:46  profilanswer
 

polo021 a écrit :


entierment d'accord donc que getvalue soit en protected ou en public ca ne change rien.
 
Je sais que je viens de dire une betise mais je veux apprendre!


Une énorme bétise, c'est clair ! regarde mon code plus haut !


---------------
J'ai un string dans l'array (Paris Hilton)
n°375878
polo021
Posté le 29-04-2003 à 12:41:09  profilanswer
 

Harkonnen a écrit :


Quand je dis "visible de l'extérieur", je veux dire que la méthode peut être utilisée à partir de l'objet instancié !
 
Si elle est protected, alors seules les classes qui héritent d'ancetre pourront utiliser getValue(). En d'autres termes, si j'instancie une classe fils, je ne pourrais pas utiliser getValue dans l'objet, mais uniquement dans la classe fils.
 
Par contre, si je la déclare en public, je pourrais accéder à getValue() à partir du programme principal.
 

Code :
  1. int main(int, char**)
  2. {
  3.    fils theFils();
  4.    int value;
  5.  
  6.    // si getValue est protected, alors ceci ne fonctionnera pas
  7.    // mais ça fonctionnera si getValue est public  
  8.    value = theFils.getValue();
  9. }




 
Je crois que je viens de comprendre un grand principe de la POO que j'avais du mal saisir en cours.  :D  
 
Merci bcp   :jap:

n°375900
darklord
You're welcome
Posté le 29-04-2003 à 13:26:06  profilanswer
 

flood :o


---------------
Just because you feel good does not make you right
n°375904
lorill
Posté le 29-04-2003 à 13:28:54  profilanswer
 
n°375905
darklord
You're welcome
Posté le 29-04-2003 à 13:29:26  profilanswer
 


 
 :o


---------------
Just because you feel good does not make you right
n°375911
Loom the G​loom
Even coders get the blues...
Posté le 29-04-2003 à 13:32:39  profilanswer
 


 
[:rofl]


---------------
Music|Market|Feed|Loom|DVD
n°375916
polo021
Posté le 29-04-2003 à 13:36:07  profilanswer
 
n°375918
urd-sama
waste of space
Posté le 29-04-2003 à 13:36:25  profilanswer
 

[:lacuna coil]


---------------
.: Clône de Drasche .:. Ebichuleys .:. Avec l'Aloe Vera je fais de beaux cacas [:dawa] .: www.oserselancer.com :.
n°375921
polo021
Posté le 29-04-2003 à 13:37:14  profilanswer
 

Est ce qu'on pourrait savoir a l'avance si les split bots ont ete demarre le matin par leur proprietaire respectif?  :whistle:
 
[:toto le hros]


Message édité par polo021 le 29-04-2003 à 13:37:53
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  19  20  21  22  23  24

Aller à :
 

Sujets relatifs
programmation Pocket PC en C++[projet] Quel langage de programmation utiliser ? (active directory...
Programmation d'un événementProgrammation openGL
programmation HPVEE ...Programmation ASM sur Windows ?
[O Caml] Programmation d'un interpréteur - pb de syntaxeProgrammation GTK Linux , problème de #include
probleme programmation driver linux de carte E/S[Outil de programmation] Visual Studio .net 2002 pro fr
Plus de sujets relatifs à : BlaBla@Programmation


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)