question bête sur les pointeurs [c++] - C++ - Programmation
Marsh Posté le 06-02-2005 à 23:07:52
http://casteyde.christian.free.fr/ [...] x1630.html
http://casteyde.christian.free.fr/ [...] x1669.html
Marsh Posté le 06-02-2005 à 23:08:09
void fonction(int a) -> pas pointeur, là tu fais un passage par valeur donc le a à l'intérieur de la fonction est simplement une copie du a à l'extérieur
renseigne toi sur les pointeurs justement, parce que là il n'y en a pas la queue d'un
Marsh Posté le 06-02-2005 à 23:12:29
Merci à vous
Marsh Posté le 06-02-2005 à 23:12:58
parce que c'était sa question?
parce que c'est plus clair que les références quand on commence?
Marsh Posté le 06-02-2005 à 23:50:18
Masklinn a écrit : parce que c'était sa question? |
oui et plsu casse gueule, les références en C++ c'est obligatoirement ultime
Marsh Posté le 07-02-2005 à 10:16:32
STOP
passage par valeur: à utiliser pour des types prédéfinis quand on ne veut pas modifié la valeur de la variable..
passage par pointeur: à utiliser pour les types prédéfinis quand on veut modifié la valeur de la variable
passage par référence: à utilisé pour les types définis par l'utilisateur...
un type prédéfinis: int, long, short, char, etc...
un type définis par le user: une classe propre à lui
void fonction(int * a)
...
int main(void)
{
int a=0;
cout << "a vaut " << a << endl;
fonction(&a);
cout << "maintenant a vaut " << a << endl;
return 0;
}
void Fonction (int * a)
{
*a = 1;
}
voila et le tour est joué...
il est totalement inutile de le passé par référence puisque c'est un type prédéfinis...
pesonnellement j'appele pas ce genre de programme du C++, mais plutot du C en utilisant les méthodes du C++...
si tu débute dans la programmation, commence par faire du C... Le C++ est un language orienté objet améliorant les bases du C.
donc perso, si tu ne travailel que comme ça, fais du c, pas du C++, ça te complique les choses la... le C est plus facile à apprendre...
Marsh Posté le 07-02-2005 à 10:53:53
Code :
|
la première chose à lui apprendre c'est quand utiliser les pointeurs
Marsh Posté le 07-02-2005 à 10:57:29
moi23372 a écrit : passage par pointeur: à utiliser pour les types prédéfinis quand on veut modifié la valeur de la variable |
c'est quoi ces salades ? qu'est ce qui t'empeche de faire
void fonction(int &a); ?
Marsh Posté le 07-02-2005 à 11:02:10
et void fonction(MyType * a)
Marsh Posté le 07-02-2005 à 11:44:13
j'ai pas dis qu'on ne pouvais pas le faire, c'est clair que ça marche...
mais les règles de bonnes conduites du C++ ne le préconise pas...
faite à votre guise, mais retenez bien ce que j'ai mis, si C++ le préconise c'est pas pour rien.
C'est pas moi qui l'ait pondu, c'est écris dans tout bon manuel de C++... Et croyez moi je m'y connais la dedans.
Marsh Posté le 07-02-2005 à 11:46:26
moi23372 a écrit : |
C'est bien de ne douter de rien.
Marsh Posté le 07-02-2005 à 11:51:20
schnapsmann a écrit : |
Puisqu'il te dit qu'il s'y connait...
http://forum.hardware.fr/forum2.ph [...] =1#t973870
Marsh Posté le 07-02-2005 à 11:53:37
moi23372 a écrit : Et croyez moi je m'y connais la dedans. |
Ca, c'est le genre de trucs à ne surtout pas mettre quand tu es étudiant, que c'est écrit dans ton profile et que la majorité des intervenants bosse dans la branche (en tant que pros)
Tu vas te faire défoncer si certains tombent sur le topic
Edit/Lam's:
Ah ben dommage, ILS ont commencé à débarquer
Marsh Posté le 07-02-2005 à 11:55:42
moi23372 a écrit : j'ai pas dis qu'on ne pouvais pas le faire, c'est clair que ça marche... |
Je crois que tu mélanges types non fondamentaux et types définis par l'utilisateur (qui peuvent êtres des enumérations, des structures, des classes, des typedef d'autres types, etc.)
Je crois aussi que tu mélanges constness et passage par valeur.
Et je crois que tu mélanges optimisation, protection, typage et encapsulation. Rien n'empêche de passer une référence constante vers un entier, si on veut que le-dit entier soit modifiable depuis une autre thread...
Marsh Posté le 07-02-2005 à 11:58:46
Si c'est un troll, c'est du haut vol à la samuelp/ptramo.
Marsh Posté le 07-02-2005 à 14:04:13
mais c'est clair ^^
void f(const int& a) ets tous ce qu'il y a de plus C++-esque
Marsh Posté le 07-02-2005 à 14:04:57
ReplyMarsh Posté le 07-02-2005 à 14:09:05
Joel F a écrit : en informatique de gestion |
Que ce soit en informatique de gestion ou en empaquetage de choucroute lyophilisée, hein
Marsh Posté le 07-02-2005 à 14:13:33
Etant également étudiant (pour ~6-9 mois si je merde pas), je sais à peu près ce que ca donne
Marsh Posté le 06-02-2005 à 23:02:29
J'ai une question plutot bête sur les pointeurs, désolé si ça vous semble con mais j'aimerais bien savoir comment modifier la valeur d'une variable passée en argument ?
Par cela je veux dire:
J'ai essayé quelque combinaisons pour pouvoir changer la valeur de a dans la fonction mais je ne dois pas trouver la bonne... Vous savez comment résoudre le problème
---------------
Et toi, tu crois que les ours polaires vont chier dans les bois ?