Bonjour Je desire apprendre le C++ je connais le C et Java .
Es ce que quelqu'un pourrait il m'indiquer par exemple un bon ouvrage a
acheter ou un bon site web avec Tutoriel.
En vous remerciant a l'avance
Cordialement
| pour moi ça prouve bien que le concept de passage par référence se comprend | bien en lui même. Et qu'il n'y a pas besoin de concept de pointeur pour ça.
Amen.
-- Gaby
Samuel Krempp <krempp@crans.truc.en.trop.ens-cachan.fr> writes:
| pour moi ça prouve bien que le concept de passage par référence se comprend
| bien en lui même. Et qu'il n'y a pas besoin de concept de pointeur pour ça.
| pour moi ça prouve bien que le concept de passage par référence se comprend | bien en lui même. Et qu'il n'y a pas besoin de concept de pointeur pour ça.
Amen.
-- Gaby
Gabriel Dos Reis
Matthieu Moy writes:
| "Michel Michaud" writes: | | >> ne vois pas comment expliquer cela (ou une référence) sans | >> donner la notion de pointeur. | > | > Tu manques d'imagination et/ou tu ne pourrais pas enseigner (ni | > utiliser) un langage qui n'a pas ce principe ! | | En même temps, les concepteurs de Java aussi ont du manquer | d'imagination le jour où ils ont écrit NullPointerException pour | ^^^^^^^ | désigner une référence ...
| "Michel Michaud" <mm@gdzid.com> writes:
|
| >> ne vois pas comment expliquer cela (ou une référence) sans
| >> donner la notion de pointeur.
| >
| > Tu manques d'imagination et/ou tu ne pourrais pas enseigner (ni
| > utiliser) un langage qui n'a pas ce principe !
|
| En même temps, les concepteurs de Java aussi ont du manquer
| d'imagination le jour où ils ont écrit NullPointerException pour
| ^^^^^^^
| désigner une référence ...
| "Michel Michaud" writes: | | >> ne vois pas comment expliquer cela (ou une référence) sans | >> donner la notion de pointeur. | > | > Tu manques d'imagination et/ou tu ne pourrais pas enseigner (ni | > utiliser) un langage qui n'a pas ce principe ! | | En même temps, les concepteurs de Java aussi ont du manquer | d'imagination le jour où ils ont écrit NullPointerException pour | ^^^^^^^ | désigner une référence ...
Je pense que c'est une tautologie :-)
-- Gaby
Gabriel Dos Reis
"Alain Naigeon" writes:
| "Michel Michaud" a écrit dans le message news: | EJzxc.33539$ | | > Dans news:40c62680$0$13821$, Alain | > | > > ne vois pas comment expliquer cela (ou une référence) sans | > > donner la notion de pointeur. | > | > Tu manques d'imagination et/ou tu ne pourrais pas enseigner (ni | > utiliser) un langage qui n'a pas ce principe ! | | Mais non, voyons : une chose est de dire que le langage | ne fournit rien pour manipuler des adresses, une autre | est de dire que la notion d'adresse ne joue aucun rôle !
Tour dépend de ce tu appelles « adresse ».
-- Gaby
"Alain Naigeon" <anaigeon@free.fr> writes:
| "Michel Michaud" <mm@gdzid.com> a écrit dans le message news:
| EJzxc.33539$sS2.1110322@news20.bellglobal.com...
|
| > Dans news:40c62680$0$13821$626a14ce@news.free.fr, Alain
| >
| > > ne vois pas comment expliquer cela (ou une référence) sans
| > > donner la notion de pointeur.
| >
| > Tu manques d'imagination et/ou tu ne pourrais pas enseigner (ni
| > utiliser) un langage qui n'a pas ce principe !
|
| Mais non, voyons : une chose est de dire que le langage
| ne fournit rien pour manipuler des adresses, une autre
| est de dire que la notion d'adresse ne joue aucun rôle !
| "Michel Michaud" a écrit dans le message news: | EJzxc.33539$ | | > Dans news:40c62680$0$13821$, Alain | > | > > ne vois pas comment expliquer cela (ou une référence) sans | > > donner la notion de pointeur. | > | > Tu manques d'imagination et/ou tu ne pourrais pas enseigner (ni | > utiliser) un langage qui n'a pas ce principe ! | | Mais non, voyons : une chose est de dire que le langage | ne fournit rien pour manipuler des adresses, une autre | est de dire que la notion d'adresse ne joue aucun rôle !
Tour dépend de ce tu appelles « adresse ».
-- Gaby
Luc Hermitte
Salut,
Je vais pinailler, étant globalement d'accord avec Loic.
Loïc Joly wrote in news:ca5bgl$fnk$:
En Java, le passage se fait par référence
Le Java ne connait que le passage par valeur. Que cela soit du passage de types primitifs par valeur, ou de de types "référence" par valeur. Ceci dit, dans la version 1.5 l'autoboxing (je crois) permettrait enfin de coder une fonction swap -- à confirmer ou infirmer.
En pascal, le passage se fait par valeur par défaut, mais var autorise le passage par référence
Le passage par adresse oui, qui signalait si l'on pouvait modifier la donnée reçue. Il n'y avait pas besoin de comprendre comment cela marchait en interne pour gérer si les modifications du paramètre formel se répercutaient sur le paramètre réel.
En IDL, le passage se fait par valeur (mode in) ou par référence (mode inout) ou encore par autre chose (mode out)
Chose qui sens bon l'Ada. Personnellement, j'aime beaucoup cette approche qui fait abstraction des détails.
Je ne vois pas plus de magie dans le passage par référence que dans celui par valeur. Tu te rend compte, ta fonction, tu lui passe une variable bien gentille, et pour une raison mystérieuse, elle décide de ne pas l'utiliser mais de la copier ailleur et d'utiliser la copie ! Si ça c'est pas de la magie maléfique qui a influencé les concepteurs du langage !
Oui. Parce qu'à ce compte là il ne faut pas oublier d'expliquer comment fonctionne la pile d'appel.
-- Luc Hermitte <hermitte at free.fr> FAQ de <news:fr.comp.lang.c++> : <http://www.cmla.ens-cachan.fr/Utilisateurs/dosreis/C++/FAQ/> Dejanews : <http://groups.google.com/advanced_group_search>
Salut,
Je vais pinailler, étant globalement d'accord avec Loic.
Loïc Joly <loic.actarus.joly@wanadoo.fr> wrote in
news:ca5bgl$fnk$1@news-reader3.wanadoo.fr:
En Java, le passage se fait par référence
Le Java ne connait que le passage par valeur. Que cela soit du passage de
types primitifs par valeur, ou de de types "référence" par valeur. Ceci
dit, dans la version 1.5 l'autoboxing (je crois) permettrait enfin de
coder une fonction swap -- à confirmer ou infirmer.
En pascal, le passage se fait par valeur par défaut, mais var
autorise le passage par référence
Le passage par adresse oui, qui signalait si l'on pouvait modifier la
donnée reçue. Il n'y avait pas besoin de comprendre comment cela marchait
en interne pour gérer si les modifications du paramètre formel se
répercutaient sur le paramètre réel.
En IDL, le passage se fait par valeur (mode in) ou par référence (mode
inout) ou encore par autre chose (mode out)
Chose qui sens bon l'Ada. Personnellement, j'aime beaucoup cette approche
qui fait abstraction des détails.
Je ne vois pas plus de magie dans le passage par référence que dans
celui par valeur. Tu te rend compte, ta fonction, tu lui passe une
variable bien gentille, et pour une raison mystérieuse, elle décide de
ne pas l'utiliser mais de la copier ailleur et d'utiliser la copie !
Si ça c'est pas de la magie maléfique qui a influencé les concepteurs
du langage !
Oui. Parce qu'à ce compte là il ne faut pas oublier d'expliquer comment
fonctionne la pile d'appel.
--
Luc Hermitte <hermitte at free.fr>
FAQ de <news:fr.comp.lang.c++> :
<http://www.cmla.ens-cachan.fr/Utilisateurs/dosreis/C++/FAQ/>
Dejanews : <http://groups.google.com/advanced_group_search>
Je vais pinailler, étant globalement d'accord avec Loic.
Loïc Joly wrote in news:ca5bgl$fnk$:
En Java, le passage se fait par référence
Le Java ne connait que le passage par valeur. Que cela soit du passage de types primitifs par valeur, ou de de types "référence" par valeur. Ceci dit, dans la version 1.5 l'autoboxing (je crois) permettrait enfin de coder une fonction swap -- à confirmer ou infirmer.
En pascal, le passage se fait par valeur par défaut, mais var autorise le passage par référence
Le passage par adresse oui, qui signalait si l'on pouvait modifier la donnée reçue. Il n'y avait pas besoin de comprendre comment cela marchait en interne pour gérer si les modifications du paramètre formel se répercutaient sur le paramètre réel.
En IDL, le passage se fait par valeur (mode in) ou par référence (mode inout) ou encore par autre chose (mode out)
Chose qui sens bon l'Ada. Personnellement, j'aime beaucoup cette approche qui fait abstraction des détails.
Je ne vois pas plus de magie dans le passage par référence que dans celui par valeur. Tu te rend compte, ta fonction, tu lui passe une variable bien gentille, et pour une raison mystérieuse, elle décide de ne pas l'utiliser mais de la copier ailleur et d'utiliser la copie ! Si ça c'est pas de la magie maléfique qui a influencé les concepteurs du langage !
Oui. Parce qu'à ce compte là il ne faut pas oublier d'expliquer comment fonctionne la pile d'appel.
-- Luc Hermitte <hermitte at free.fr> FAQ de <news:fr.comp.lang.c++> : <http://www.cmla.ens-cachan.fr/Utilisateurs/dosreis/C++/FAQ/> Dejanews : <http://groups.google.com/advanced_group_search>
Alain Naigeon
"Michel Michaud" a écrit dans le message news: EJzxc.33539$
Dans news:40c62680$0$13821$, Alain
ne vois pas comment expliquer cela (ou une référence) sans donner la notion de pointeur.
Tu manques d'imagination et/ou tu ne pourrais pas enseigner (ni utiliser) un langage qui n'a pas ce principe !
Mais non, voyons : une chose est de dire que le langage ne fournit rien pour manipuler des adresses, une autre est de dire que la notion d'adresse ne joue aucun rôle !
--
Français *==> "Musique renaissance" <==* English midi - facsimiles - ligatures - mensuration http://anaigeon.free.fr | http://www.medieval.org/emfaq/anaigeon/ Alain Naigeon - - Strasbourg, France
"Michel Michaud" <mm@gdzid.com> a écrit dans le message news:
EJzxc.33539$sS2.1110322@news20.bellglobal.com...
Dans news:40c62680$0$13821$626a14ce@news.free.fr, Alain
ne vois pas comment expliquer cela (ou une référence) sans
donner la notion de pointeur.
Tu manques d'imagination et/ou tu ne pourrais pas enseigner (ni
utiliser) un langage qui n'a pas ce principe !
Mais non, voyons : une chose est de dire que le langage
ne fournit rien pour manipuler des adresses, une autre
est de dire que la notion d'adresse ne joue aucun rôle !
--
Français *==> "Musique renaissance" <==* English
midi - facsimiles - ligatures - mensuration
http://anaigeon.free.fr | http://www.medieval.org/emfaq/anaigeon/
Alain Naigeon - anaigeon@free.fr - Strasbourg, France
"Michel Michaud" a écrit dans le message news: EJzxc.33539$
Dans news:40c62680$0$13821$, Alain
ne vois pas comment expliquer cela (ou une référence) sans donner la notion de pointeur.
Tu manques d'imagination et/ou tu ne pourrais pas enseigner (ni utiliser) un langage qui n'a pas ce principe !
Mais non, voyons : une chose est de dire que le langage ne fournit rien pour manipuler des adresses, une autre est de dire que la notion d'adresse ne joue aucun rôle !
--
Français *==> "Musique renaissance" <==* English midi - facsimiles - ligatures - mensuration http://anaigeon.free.fr | http://www.medieval.org/emfaq/anaigeon/ Alain Naigeon - - Strasbourg, France
kanze
Luc Hermitte wrote in message news:...
[...]
Chose qui sens bon l'Ada. Personnellement, j'aime beaucoup cette approche qui fait abstraction des détails.
ESt-ce qu'il fait abstraction des détails ? Le passage par référence introduit le problème des alias. C'est un problème pour l'optimisateur, mais c'est aussi un problème pour celui qui veut comprendre le programme.
Ou est-ce que les paramètres inout utilise le « copy in, copy out » ? C-à-d que le paramètre est toujours une copie dans la fonction, mais dans le cas de out ou de inout, il serait récopier dans le paramètre de l'appel au rétour de la fonction.
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Luc Hermitte <hermitte@free.fr.invalid> wrote in message
news:<Xns9503BF2731C1isyfur@127.0.0.1>...
[...]
Chose qui sens bon l'Ada. Personnellement, j'aime beaucoup cette
approche qui fait abstraction des détails.
ESt-ce qu'il fait abstraction des détails ? Le passage par référence
introduit le problème des alias. C'est un problème pour l'optimisateur,
mais c'est aussi un problème pour celui qui veut comprendre le
programme.
Ou est-ce que les paramètres inout utilise le « copy in, copy out » ?
C-à-d que le paramètre est toujours une copie dans la fonction, mais
dans le cas de out ou de inout, il serait récopier dans le paramètre de
l'appel au rétour de la fonction.
--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Chose qui sens bon l'Ada. Personnellement, j'aime beaucoup cette approche qui fait abstraction des détails.
ESt-ce qu'il fait abstraction des détails ? Le passage par référence introduit le problème des alias. C'est un problème pour l'optimisateur, mais c'est aussi un problème pour celui qui veut comprendre le programme.
Ou est-ce que les paramètres inout utilise le « copy in, copy out » ? C-à-d que le paramètre est toujours une copie dans la fonction, mais dans le cas de out ou de inout, il serait récopier dans le paramètre de l'appel au rétour de la fonction.
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Jean-Marc Bourguet
writes:
[Ada]
Ou est-ce que les paramètres inout utilise le « copy in, copy out » ? C-à-d que le paramètre est toujours une copie dans la fonction, mais dans le cas de out ou de inout, il serait récopier dans le paramètre de l'appel au rétour de la fonction.
Tu veux les details? De memoire, copy in copy out est garanti pour certains types (plus ou moins les types de bases), le passage par reference garanti pour d'autres (types limités -- la copie n'est pas definie -- et types taggés -- classes avec virtuelles) et pour le reste ce n'est pas specifié (donc dependre du comportement est une erreur).
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
kanze@gabi-soft.fr writes:
[Ada]
Ou est-ce que les paramètres inout utilise le « copy in, copy out » ?
C-à-d que le paramètre est toujours une copie dans la fonction, mais
dans le cas de out ou de inout, il serait récopier dans le paramètre de
l'appel au rétour de la fonction.
Tu veux les details? De memoire, copy in copy out est garanti pour
certains types (plus ou moins les types de bases), le passage par
reference garanti pour d'autres (types limités -- la copie n'est pas
definie -- et types taggés -- classes avec virtuelles) et pour le
reste ce n'est pas specifié (donc dependre du comportement est une
erreur).
A+
--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Ou est-ce que les paramètres inout utilise le « copy in, copy out » ? C-à-d que le paramètre est toujours une copie dans la fonction, mais dans le cas de out ou de inout, il serait récopier dans le paramètre de l'appel au rétour de la fonction.
Tu veux les details? De memoire, copy in copy out est garanti pour certains types (plus ou moins les types de bases), le passage par reference garanti pour d'autres (types limités -- la copie n'est pas definie -- et types taggés -- classes avec virtuelles) et pour le reste ce n'est pas specifié (donc dependre du comportement est une erreur).
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org