pour la premiere je sais pas mais ca me viendrais pas a l'idee de faire ca et pour la deuxieme puisque tu affectes une constantes ca ne sert a rien de mettre un pointeur qui "pointe" sur ta valeur de constante
Publicité
Posté le 05-02-2002 à 17:18:21
cyp
Profil : Pilote pro
Note : 2.2/4 pour 44 votes
Posté le 05-02-2002 à 17:21:31
Cubitus07 a écrit :
pour la deuxieme puisque tu affectes une constantes ca ne sert a rien de mettre un pointeur qui "pointe" sur ta valeur de constante
Nous parlons de réference, pas de pointeur ! nous sommes en C++
Il n'y a pas de pointeur ici...
Stv406
Profil : Pilote pro
Note : 1.8/4 pour 8 votes
Posté le 05-02-2002 à 17:22:35
'tain. Je ne me rappelle plus de rien en C++ alors que je n'ai jamais eu moins de 19/20 dans cette matière en cours !
cubitus07
Profil : Pilote pro
Note : 1.5/4 pour 60 votes
Posté le 05-02-2002 à 17:23:58
ben je sais pas
Publicité
Posté le 05-02-2002 à 17:23:58
cyp
Profil : Pilote pro
Note : 2.2/4 pour 44 votes
Posté le 05-02-2002 à 17:24:18
SaintAndré a écrit :
tu veux des cours de C++ ?
On sèche SaintAndré ?
cubitus07
Profil : Pilote pro
Note : 1.5/4 pour 60 votes
Posté le 05-02-2002 à 17:26:05
j'ai ecris ta premiere ligne en c++ j'ai compile et ... pas d'erreur ni de warning
SaintAndre
Profil : Pilote
Note : 1.8/4 pour 8 votes
Posté le 05-02-2002 à 17:26:53
Dans la déclaration d'une prodédure on peut préciser int myproc( int &x) {}
qui signifie un passage par référence !
int myproc(int x = 5) {}
qui signifie valeur par défaut !
Passer une référence par défaut c'est débile ou alors on fait référence à l'adresse 5 de la mémoire !
cyp
Profil : Pilote pro
Note : 2.2/4 pour 44 votes
Posté le 05-02-2002 à 17:27:28
Cubitus07 a écrit :
j'ai ecris ta premiere ligne en c++ j'ai compile et ... pas d'erreur ni de warning
Alors tu n'es pas en VC++ :
error C2440: 'initializing' : cannot convert from 'const int' to 'int &'
A reference that is not to 'const' cannot be bound to a non-lvalue
Tu es sur quoi ???
SaintAndre
Profil : Pilote
Note : 1.8/4 pour 8 votes
Posté le 05-02-2002 à 17:29:24
cyp a écrit :
On sèche SaintAndré ?
Tu rigoles le C et le C++ je suis tombé dedans quand j'étais petit !
cubitus07
Profil : Pilote pro
Note : 1.5/4 pour 60 votes
Posté le 05-02-2002 à 17:29:25
dans l'aide super bien faite de C++ il indique "ne peut pas convertir const int en const &"
cyp
Profil : Pilote pro
Note : 2.2/4 pour 44 votes
Posté le 05-02-2002 à 17:31:10
SaintAndré a écrit :
Dans la déclaration d'une prodédure on peut préciser int myproc( int &x) {}
qui signifie un passage par référence !
int myproc(int x = 5) {}
qui signifie valeur par défaut !
Passer une référence par défaut c'est débile ou alors on fait référence à l'adresse 5 de la mémoire !
Je ne parle pas de "passage par référence" mais de "réference" tout cours...
Tu n'a pas répondu
Gu
Profil : Pilote semi-pro
Note : 1.3/4 pour 10 votes
Posté le 05-02-2002 à 17:33:23
cyp a écrit :
On va réviser "la réference"
La référence c'est pour les tapettes et les handicapés-psychomoteurs-ex-programmeur-pascal !
momo
Profil : Vétéran confirmé
Note : 1.7/4 pour 9 votes
Posté le 05-02-2002 à 17:34:45
cyp a écrit :
Cubitus07 a écrit :
j'ai ecris ta premiere ligne en c++ j'ai compile et ... pas d'erreur ni de warning
Alors tu n'es pas en VC++ :
error C2440: 'initializing' : cannot convert from 'const int' to 'int &'
A reference that is not to 'const' cannot be bound to a non-lvalue
Tu es sur quoi ???
Pareil mais alors aucune idée excusé moi mon niveau c++ n'est pas aussi élevé, mais sinon je répondais pareil que saintandré
cyp
Profil : Pilote pro
Note : 2.2/4 pour 44 votes
Posté le 05-02-2002 à 17:40:12
cyp a écrit :
On va réviser "la réference"
Pourquoi cette declaration est interdite en C++ :
int & n = 5 ;
Et pourquoi celle là est stupide :
const int & n = 5 ;
Alors :
int & n=5; revient à initialiser n avec une référence à l'entier 5 !
Quel intêret alors de l'instruction n=5 ??? c'est la même chose !
on peut forcer le C++ à le faire quand même avec CONST :
const int & n=5; il n'y aura pas d'erreur de compilation !
mais vous aurez ecrit en fait n = 5 , ni plus, ni moins
cyp
Profil : Pilote pro
Note : 2.2/4 pour 44 votes
Posté le 05-02-2002 à 17:47:30
Gu a écrit :
La référence c'est pour les tapettes et les handicapés-psychomoteurs-ex-programmeur-pascal !
là, GU je suis etonné !
La réference est un méthode clé du C++ ! (elle n'existe pas en C).
Gu
Profil : Pilote semi-pro
Note : 1.3/4 pour 10 votes
Posté le 05-02-2002 à 18:00:07
cyp a écrit :
là, GU je suis etonné !
La réference est un méthode clé du C++ ! (elle n'existe pas en C).
On peut écrire sans...
cyp
Profil : Pilote pro
Note : 2.2/4 pour 44 votes
Posté le 05-02-2002 à 18:03:00
Un cas simple : modifier la valeur d'un pointeur dans une fonction...
Et que cette modification soit définitive...
Et bien on passe le pointeur par référence !
icare
Profil : Routard
Note : 2.7/4 pour 9 votes
Posté le 05-02-2002 à 18:06:31
Cubitus07 a écrit :
j'ai ecris ta premiere ligne en c++ j'ai compile et ... pas d'erreur ni de warning
Essaie en exécution avant de conclure
Des options de compilation peuvent faire apparaitre des warnings supplémentaires, et des compilateurs moins permissifs (chez GNU..) peuvent stopper ce qui passe avec d'autres...
Gu
Profil : Pilote semi-pro
Note : 1.3/4 pour 10 votes
Posté le 05-02-2002 à 18:10:10
cyp a écrit :
Un cas simple : modifier la valeur d'un pointeur dans une fonction...
Et que cette modification soit définitive...
Et bien on passe le pointeur par référence !
Oui ... ou tu passes explicitement l'adresse du pointeur et ta fonction appellée accepte un pointeur sur pointeur... Ce qui revient strictement au même...
momo
Profil : Vétéran confirmé
Note : 1.7/4 pour 9 votes
Posté le 05-02-2002 à 22:13:58
Gu a écrit :
cyp a écrit :
Un cas simple : modifier la valeur d'un pointeur dans une fonction... Et que cette modification soit définitive...
Et bien on passe le pointeur par référence !
Oui ... ou tu passes explicitement l'adresse du pointeur et ta fonction appellée accepte un pointeur sur pointeur... Ce qui revient strictement au même...
Jamais utilisé les références pour modifié la valeur d'un pointeur dans une class (et oui en objet il n'y as plu de fct )