Les references ..
Fermé
DevGl
Messages postés
136
Date d'inscription
samedi 23 novembre 2013
Statut
Membre
Dernière intervention
16 mai 2015
-
Modifié par Whismeril le 10/12/2014 à 19:08
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 - 11 déc. 2014 à 00:26
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 - 11 déc. 2014 à 00:26
A voir également:
- Les references ..
- Il existe une ou plusieurs références circulaires - Forum Excel
- Excel a rencontré un problème au niveau d'une ou de plusieurs références de formules - Forum Excel
- Excel: Reference circulaire ✓ - Forum Excel
- EXCEL : trouver une reference externe ✓ - Forum Excel
- Problème de Formule Excel 2013 ✓ - Forum Excel
2 réponses
sambia39
Messages postés
610
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
9 février 2023
49
11 déc. 2014 à 00:26
11 déc. 2014 à 00:26
Bonsoir
Il n'est pas préférable d'écrire pour la fonction coïncide ainsi :
au lieu (ci-dessous) avec un accès direct a le variable privé (qui est pas conforme )
Bref, ça donnerait:
à bientôt
Il n'est pas préférable d'écrire pour la fonction coïncide ainsi :
bool f_Coincide( cVecteur *vY ){ if( (this->x == vY->f_GetX() ) && (this->y == vY->f_GetY()) && (this->z == vY->f_GetZ() ) ) return ( true ); else return ( false ); }
au lieu (ci-dessous) avec un accès direct a le variable privé (qui est pas conforme )
void vecteur::coicide(vecteur v2){ if(x==v2.x && y==v2.y && z==v2.z){ cout<<"les deux vecteurs sont coicide"<<endl; } else { cout<<"les deux vecteurs ne sont pas coicide"<<endl; } }
Bref, ça donnerait:
#include <iostream> //Classe vecteur class cVecteur; class cVecteur{ public: //Constructeur cVecteur( void ){ this->x = 0; this->y = 0; this->z = 0; } //Destructeur ~cVecteur( void ){ this->x = 0; this->y = 0; this->z = 0; } //Fonction Coincide bool f_Coincide( cVecteur *vY ){ if( (this->x == vY->f_GetX() ) && (this->y == vY->f_GetY()) && (this->z == vY->f_GetZ() ) ) return ( true ); else return ( false ); } //Quelque Setter void f_SetX( float fX ){ this->x = fX; } void f_SetY( float fY ){ this->y = fY; } void f_SetZ( float fZ ){ this->z = fZ; } //Setter global void f_SetGlobalVar( float fX, float fY, float fZ ){ this->x = fX; this->y = fY; this->z = fZ; } //Quelque Getter float const f_GetX( void ){ return ( this->x ); } float const f_GetY( void ){ return ( this->y ); } float const f_GetZ( void ){ return( this->z ); } private: float x; float y; float z; }; //Fonction Principale int main( void ){ cVecteur vX; cVecteur vY; //Affectation vX.f_SetGlobalVar(1,2,3); vY.f_SetGlobalVar(1,2,3); //cas 1 if( vX.f_Coincide(&vY) ) std::cout<< "Les elements coincide (Cas 1)" <<std::endl; else std::cout<< "Les elements coincide pas (Cas 1)" <<std::endl; //Cas 2 vX.f_SetY(5); if( vX.f_Coincide(&vY) ) std::cout<< "Les elements coincide (Cas 2)" <<std::endl; else std::cout<< "Les elements coincide pas (Cas 2)" <<std::endl; return( 0 ); }
à bientôt
Bonjour,
Pour passer une référence, il faut passer l'adresse de l'objet comme paramètre de la fonction.
EDIT: Ajout de la coloration syntaxique.
Pour passer une référence, il faut passer l'adresse de l'objet comme paramètre de la fonction.
class vecteur { public: vecteur(float c1=0.0 ,float c2=0.0,float c3=0.0){ x=c1 , y=c2 , z=c3;} void coicide ( vecteur* lpv2); le paramètre est l'adresse ( la référence) ... } ... void vecteur::coicide(vecteur* lpv2){ if(x==lpv2->x && y==lpv2->y && z==lpv2->z){ cout<<"les deux vecteurs sont coicide"<<endl; } else { cout<<"les deux vecteurs ne sont pas coicide"<<endl; } } ... int main() { vecteur v1(1,2,3); vecteur v2(1,2,4); v1.coicide(&v2); // on passe l'adresse de v2 return 0; }
EDIT: Ajout de la coloration syntaxique.