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

  FORUM HardWare.fr
  Programmation
  C++

  Explication ligne code c++

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Explication ligne code c++

n°2009221
fightingsp​irit
Posté le 15-07-2010 à 10:15:18  profilanswer
 

Bonjour
J'ai besoin d'un petit coup de main :je travaille dans une structure de logiciels et j'ai un peu de mal avec la manière dont ils concoivent leur code.
Quelqu'un pourrait t'il m'expliquer en détail la description(en gros à quoi servent les mots clés tels que & , const) de cette fonction écrite ci dessous?
 
virtual int CationSession( int ID,
                                    dev::Date calibDate,  
                                    DBOpt& opts,  
                                    DBC& CD,DBVSL& VS) const = 0;
 
D'après ce que j'ai compris le const veut dire que la fonction est un accesseur(ne modifie pas les données de la classe lorsque éxécutée)
que =0 veut dire que la fonction est virtuelle pure cad que la classe dont elle est issue ne pourra être dupliquée , mais pour le reste le & qui est supposé indiquer un passage à une référence le :: je ne comprends pas trop ce que ça veut dire.
 
virtual int CationFiOn( int runeltID,
                                            const DetailsInstrument<FictOT> onet[],
                                            bool isFirstCation ) const =0;
 
De la même manière qye veut dire la ligne suivante dans ce bout de code:
 const DetailsInstrument<FictitiousOneTouch> onetouches[]
 
 
Une réponse à ces deux questions me permettarit de continuer à me démerder sans souci pour la suite de mon stage.

mood
Publicité
Posté le 15-07-2010 à 10:15:18  profilanswer
 

n°2009225
Deamon
Posté le 15-07-2010 à 10:27:22  profilanswer
 

Le :: indique qu'il s'agit de l'objet Date existante dans la classe dev.

 

Pour "const DetailsInstrument<FictitiousOneTouch> onetouches[] " :
Le const indique que ce paramètre ne pourra pas être modifié dans la fonction. onetouches est un tableau de DetailsInstrument<FictitiousOneTouch>. Après il n'y a que toi qui sait qu'est un DetailsInstrument<FictitiousOneTouch>. ;)

 

Le =0 du virtuel veut dire que c'est à une classe fille d'implémenter cette fonction.


Message édité par Deamon le 15-07-2010 à 10:28:49
n°2010402
Profil sup​primé
Posté le 20-07-2010 à 15:10:00  answer
 

Le & indique que tu passes une référence en argument de ta fonction. En faisant ça, ce que tu passes en argument ne sera pas recopié lors de l'appel à la fonction, et par ailleurs tu pourras modifier directement la variable dans ta fonction (si la fonction ne modifie pas la variable en question, ici le DBOpt, tu peux aussi passer l'argument en référence constante en écrivant "const DBOpt& opts" ). Finalement c'est la même idée que de passer des pointeurs en argument de la fonction, mais c'est plus simple d'utilisation (tu n'as pas à t'encombrer avec les * ou les -> ).


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Explication ligne code c++

 

Sujets relatifs
Corriger une ligne phpmodifier le code html de mon blog
modifier une ligne precise d'un fichier texte(JS)Vérifier si un serveur est en ligne avant de faire une redirection
Problème pour modifier la valeur d'une ligne dans un fichiersurligner totalité d'une ligne html
Explication balises méta et link[WLM] statut "Hors ligne" de manière individuelle
Comment supprimer un bouton sur userfom avec du code VBA ?compréhension d'un petit code réécris issus de string.h
Plus de sujets relatifs à : Explication ligne code c++


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR