D'autre part, certains cours de C++ se basent et supposent, de la part des étudiants, qu'ils possèdent déjà des bases en C. Ainsi, ces cours reposent sur des notions acquises en C. Pensez-vous qu'aujourd'hui, en 2011, cela a t-il encore réellement un sens ?
Enfin, si aujourd'hui, on vous demandait d'enseigner le C++, quelles seraient les lignes directrices de votre cours ?
D'autre part, certains cours de C++ se basent et supposent, de la part des étudiants, qu'ils possèdent déjà des bases en C. Ainsi, ces cours reposent sur des notions acquises en C. Pensez-vous qu'aujourd'hui, en 2011, cela a t-il encore réellement un sens ?
Enfin, si aujourd'hui, on vous demandait d'enseigner le C++, quelles seraient les lignes directrices de votre cours ?
D'autre part, certains cours de C++ se basent et supposent, de la part des étudiants, qu'ils possèdent déjà des bases en C. Ainsi, ces cours reposent sur des notions acquises en C. Pensez-vous qu'aujourd'hui, en 2011, cela a t-il encore réellement un sens ?
Enfin, si aujourd'hui, on vous demandait d'enseigner le C++, quelles seraient les lignes directrices de votre cours ?
Bonjour à tous,
Comme le dit le sujet, j'écris ce post pour parler et débattre autour
de l'apprentissage et l'enseignement _moderne_ du C++.
En effet, comme vous le savez sans doute, dans la majorité des cursus
informatiques (tout du moins, en France), l'on retrouve toute une
partie sur l'apprentissage de la programmation, et sur le C++. De mon
point de vue, il s'agit de l'un des langages les plus complexes à
appréhender, ce qui rend son enseignement très délicat. Les cours
dispensés dans les différentes écoles se doivent d'être rigoureux, en
réduisant le plus possible les approximations que l'on pourrait y
trouver.
Cependant, de ma propre constatation, au sein du corps enseignant,
rares sont les enseignants à se tenir au gout du jour (l'informatique
étant un secteur évoluant très vite), et à imposer une réelle rigueur
dans les cours dispensés aux élèves. Au final, on se retrouve donc
avec un cours plutôt approximatif, aux exemples mal choisis et idioms
et pratiques courantes pas toujours respectées.
C'est pour cela que je souhaite instaurer le débat, avec des
personnes d'expérience, venant de l'industrie même, et ayant dans la
plupart des cas vu évoluer le langage, voire son enseignement (dans
les différents bouquins, cours, ...). En outre, avec l'arrivée
récente du nouveau standard C++11, cela risque de remettre pas mal de
choses et de cours en question.
Pensez-vous qu'il est pour l'instant trop prématuré d'introduire
certaines notions et fonctionnalités de C++11 dans les cours actuels
? Pensez-vous que cela rentre dans le cadre de la « renaissance » du
C++, et doit donc faire parti de l'enseignement moderne du C++ ? A
l'heure actuelle, rares sont les bouquins ayant été mis à jour pour
C++11 (à part les bouquins faisant état de TR1). Cela ne risque donc
t-il pas de poser un problème au niveau des ressources disponibles
pour les étudiants ?
D'autre part, certains cours de C++ se basent et supposent, de la
part des étudiants, qu'ils possèdent déjà des bases en C. Ainsi, ces
cours reposent sur des notions acquises en C. Pensez-vous
qu'aujourd'hui, en 2011, cela a t-il encore réellement un sens ?
Scott Meyers nous disait que l'utilisation de C++ rassemblait 4
entités : - le C - L'orienté objet - La programmation générique avec
les templates - la STL
Est-il donc encore, en 2011, réellement productif et justifié de
passer par la case « C » avant d'introduire le C++ ?
Enfin, si aujourd'hui, on vous demandait d'enseigner le C++, quelles
seraient les lignes directrices de votre cours ? Quel serait le «
plan » de votre cours ? Passeriez-vous du temps pour « vérifier » les
acquis du C, ou bien vous concentreriez-vous exclusivement sur le
C++, ses pratiques et ses idioms en évoquant les parties héritées du
C lorsqu'il le faut ?
Si je pose ces questions, c'est car j'aimerais récolter l'avis de
personnes ayant passé de nombreuses années dans l'industrie, et non
pas seulement dans le domaine accadémique. Les deux ne sont, selon
moi, pas incompatible, et peuvent travailler ensemble.
Cordialement.
Bonjour à tous,
Comme le dit le sujet, j'écris ce post pour parler et débattre autour
de l'apprentissage et l'enseignement _moderne_ du C++.
En effet, comme vous le savez sans doute, dans la majorité des cursus
informatiques (tout du moins, en France), l'on retrouve toute une
partie sur l'apprentissage de la programmation, et sur le C++. De mon
point de vue, il s'agit de l'un des langages les plus complexes à
appréhender, ce qui rend son enseignement très délicat. Les cours
dispensés dans les différentes écoles se doivent d'être rigoureux, en
réduisant le plus possible les approximations que l'on pourrait y
trouver.
Cependant, de ma propre constatation, au sein du corps enseignant,
rares sont les enseignants à se tenir au gout du jour (l'informatique
étant un secteur évoluant très vite), et à imposer une réelle rigueur
dans les cours dispensés aux élèves. Au final, on se retrouve donc
avec un cours plutôt approximatif, aux exemples mal choisis et idioms
et pratiques courantes pas toujours respectées.
C'est pour cela que je souhaite instaurer le débat, avec des
personnes d'expérience, venant de l'industrie même, et ayant dans la
plupart des cas vu évoluer le langage, voire son enseignement (dans
les différents bouquins, cours, ...). En outre, avec l'arrivée
récente du nouveau standard C++11, cela risque de remettre pas mal de
choses et de cours en question.
Pensez-vous qu'il est pour l'instant trop prématuré d'introduire
certaines notions et fonctionnalités de C++11 dans les cours actuels
? Pensez-vous que cela rentre dans le cadre de la « renaissance » du
C++, et doit donc faire parti de l'enseignement moderne du C++ ? A
l'heure actuelle, rares sont les bouquins ayant été mis à jour pour
C++11 (à part les bouquins faisant état de TR1). Cela ne risque donc
t-il pas de poser un problème au niveau des ressources disponibles
pour les étudiants ?
D'autre part, certains cours de C++ se basent et supposent, de la
part des étudiants, qu'ils possèdent déjà des bases en C. Ainsi, ces
cours reposent sur des notions acquises en C. Pensez-vous
qu'aujourd'hui, en 2011, cela a t-il encore réellement un sens ?
Scott Meyers nous disait que l'utilisation de C++ rassemblait 4
entités : - le C - L'orienté objet - La programmation générique avec
les templates - la STL
Est-il donc encore, en 2011, réellement productif et justifié de
passer par la case « C » avant d'introduire le C++ ?
Enfin, si aujourd'hui, on vous demandait d'enseigner le C++, quelles
seraient les lignes directrices de votre cours ? Quel serait le «
plan » de votre cours ? Passeriez-vous du temps pour « vérifier » les
acquis du C, ou bien vous concentreriez-vous exclusivement sur le
C++, ses pratiques et ses idioms en évoquant les parties héritées du
C lorsqu'il le faut ?
Si je pose ces questions, c'est car j'aimerais récolter l'avis de
personnes ayant passé de nombreuses années dans l'industrie, et non
pas seulement dans le domaine accadémique. Les deux ne sont, selon
moi, pas incompatible, et peuvent travailler ensemble.
Cordialement.
Bonjour à tous,
Comme le dit le sujet, j'écris ce post pour parler et débattre autour
de l'apprentissage et l'enseignement _moderne_ du C++.
En effet, comme vous le savez sans doute, dans la majorité des cursus
informatiques (tout du moins, en France), l'on retrouve toute une
partie sur l'apprentissage de la programmation, et sur le C++. De mon
point de vue, il s'agit de l'un des langages les plus complexes à
appréhender, ce qui rend son enseignement très délicat. Les cours
dispensés dans les différentes écoles se doivent d'être rigoureux, en
réduisant le plus possible les approximations que l'on pourrait y
trouver.
Cependant, de ma propre constatation, au sein du corps enseignant,
rares sont les enseignants à se tenir au gout du jour (l'informatique
étant un secteur évoluant très vite), et à imposer une réelle rigueur
dans les cours dispensés aux élèves. Au final, on se retrouve donc
avec un cours plutôt approximatif, aux exemples mal choisis et idioms
et pratiques courantes pas toujours respectées.
C'est pour cela que je souhaite instaurer le débat, avec des
personnes d'expérience, venant de l'industrie même, et ayant dans la
plupart des cas vu évoluer le langage, voire son enseignement (dans
les différents bouquins, cours, ...). En outre, avec l'arrivée
récente du nouveau standard C++11, cela risque de remettre pas mal de
choses et de cours en question.
Pensez-vous qu'il est pour l'instant trop prématuré d'introduire
certaines notions et fonctionnalités de C++11 dans les cours actuels
? Pensez-vous que cela rentre dans le cadre de la « renaissance » du
C++, et doit donc faire parti de l'enseignement moderne du C++ ? A
l'heure actuelle, rares sont les bouquins ayant été mis à jour pour
C++11 (à part les bouquins faisant état de TR1). Cela ne risque donc
t-il pas de poser un problème au niveau des ressources disponibles
pour les étudiants ?
D'autre part, certains cours de C++ se basent et supposent, de la
part des étudiants, qu'ils possèdent déjà des bases en C. Ainsi, ces
cours reposent sur des notions acquises en C. Pensez-vous
qu'aujourd'hui, en 2011, cela a t-il encore réellement un sens ?
Scott Meyers nous disait que l'utilisation de C++ rassemblait 4
entités : - le C - L'orienté objet - La programmation générique avec
les templates - la STL
Est-il donc encore, en 2011, réellement productif et justifié de
passer par la case « C » avant d'introduire le C++ ?
Enfin, si aujourd'hui, on vous demandait d'enseigner le C++, quelles
seraient les lignes directrices de votre cours ? Quel serait le «
plan » de votre cours ? Passeriez-vous du temps pour « vérifier » les
acquis du C, ou bien vous concentreriez-vous exclusivement sur le
C++, ses pratiques et ses idioms en évoquant les parties héritées du
C lorsqu'il le faut ?
Si je pose ces questions, c'est car j'aimerais récolter l'avis de
personnes ayant passé de nombreuses années dans l'industrie, et non
pas seulement dans le domaine accadémique. Les deux ne sont, selon
moi, pas incompatible, et peuvent travailler ensemble.
Cordialement.
En C++, il est clair que c'est le passage par référence constante qui
devrait être le défaut.
En C++, il est clair que c'est le passage par référence constante qui
devrait être le défaut.
En C++, il est clair que c'est le passage par référence constante qui
devrait être le défaut.
Ça n'avait déjà plus aucun sens en 2000.
Certes, connaître les structures for, if, etc., peut faire gagner du
temps lors de l'apprentissage de C++, mais pour ça, Javascript
convient largement aussi bien que C.
Non cela n'a pas vraiment de sens. C'est même un facteur de confusion
car les étudiants ou même les professionnels (ou leurs managers...)
peuvent croire, de ce fait, que C++ n'est qu'une extension de C (comme
certains clients qui me réclamaient des cours de C++ de 3 jours car
leurs troupes connaissaient déjà le langage C !).
J'ai, par ailleurs enseigné à la fois dans un mastère
de génie logiciel et dans l'industrie pour des cours en
intra et en inter entreprise. J'ai commencé à enseigner le C++
en 1991 et cette année, j'ai encore donné un cours de C++
avancé abordant la métaprogrammation, les traits, les
politiques, CRTP (Curiously Recurring Template Pattern),
Substitution Failure Is Not An Error (SFINAE), etc.
Il fut une époque où j'ai vu apparaître la STL alors
que je donnais, en entreprise, des cours d'une semaine de
C++ environ toutes les 6 semaines. C'était très difficile
car il fallait en parler mais pas en détail. Il fallait
dire juste ce qu'il faut pour que les participants puissent
"faire leur chemin" ensuite. C'est ça le plus difficile
pédagogiquement parlant.
Il me semble qu'il ne faut pas "maximiser" les nouveautés
de C++11. Elles doivent s'inscrire naturellement dans un
cours comme l'uniformisation des syntaxes d'initialisation.
Cependant, il faut faire attention à qui l'on s'adresse car
pour des professionnels, ils ne passeront pas du jour au lendemain
à C++11. Il faut donc continuer à décrire les anciennes syntaxes.
Par contre, dans l'enseignement académique, on peut y aller plus
franchement, si je puis dire.
Par contre, il faut en parler dans les cursus universitaires et,
dans l'immédiat, je laisserais plutôt le cours classique et je
ferais un chapitre de survol, à part, sur les nouveautés et, au
fur et à mesure, que les nouveautés se répandent, les intégrer da ns
le cours. Certaines se propageront plus vite que d'autres. De toutes
façon, les librairies concernant le multithreading, ne doivent pas
être abordées dans un tronc commun, il me semble.
Les bouquins viendront vite, à mon avis, mais il y a tellement de
mauvais livres sur C++ (et la programmation, en général...).
Le mieux c'est d'utiliser Internet. Il y a déjà des
choses intéressantes sur les nouveautés comme,
par exemple, sur le multithreading (et ça date de 2008 !) :
http://www.devx.com/SpecialReports/Article/38883/0/page/1
Probablement, je reprendrais le contenu de Accelerated C++ (avec
éventuellement quelques modifications pour prendre C++11 en compte).
Ça reste, AMHA, la référence pour l'apprentissage du C++.
Grosso modo : std::string dès le premier chapitre ; char* vers la fin,
s'il reste du temps.
Ça n'avait déjà plus aucun sens en 2000.
Certes, connaître les structures for, if, etc., peut faire gagner du
temps lors de l'apprentissage de C++, mais pour ça, Javascript
convient largement aussi bien que C.
Non cela n'a pas vraiment de sens. C'est même un facteur de confusion
car les étudiants ou même les professionnels (ou leurs managers...)
peuvent croire, de ce fait, que C++ n'est qu'une extension de C (comme
certains clients qui me réclamaient des cours de C++ de 3 jours car
leurs troupes connaissaient déjà le langage C !).
J'ai, par ailleurs enseigné à la fois dans un mastère
de génie logiciel et dans l'industrie pour des cours en
intra et en inter entreprise. J'ai commencé à enseigner le C++
en 1991 et cette année, j'ai encore donné un cours de C++
avancé abordant la métaprogrammation, les traits, les
politiques, CRTP (Curiously Recurring Template Pattern),
Substitution Failure Is Not An Error (SFINAE), etc.
Il fut une époque où j'ai vu apparaître la STL alors
que je donnais, en entreprise, des cours d'une semaine de
C++ environ toutes les 6 semaines. C'était très difficile
car il fallait en parler mais pas en détail. Il fallait
dire juste ce qu'il faut pour que les participants puissent
"faire leur chemin" ensuite. C'est ça le plus difficile
pédagogiquement parlant.
Il me semble qu'il ne faut pas "maximiser" les nouveautés
de C++11. Elles doivent s'inscrire naturellement dans un
cours comme l'uniformisation des syntaxes d'initialisation.
Cependant, il faut faire attention à qui l'on s'adresse car
pour des professionnels, ils ne passeront pas du jour au lendemain
à C++11. Il faut donc continuer à décrire les anciennes syntaxes.
Par contre, dans l'enseignement académique, on peut y aller plus
franchement, si je puis dire.
Par contre, il faut en parler dans les cursus universitaires et,
dans l'immédiat, je laisserais plutôt le cours classique et je
ferais un chapitre de survol, à part, sur les nouveautés et, au
fur et à mesure, que les nouveautés se répandent, les intégrer da ns
le cours. Certaines se propageront plus vite que d'autres. De toutes
façon, les librairies concernant le multithreading, ne doivent pas
être abordées dans un tronc commun, il me semble.
Les bouquins viendront vite, à mon avis, mais il y a tellement de
mauvais livres sur C++ (et la programmation, en général...).
Le mieux c'est d'utiliser Internet. Il y a déjà des
choses intéressantes sur les nouveautés comme,
par exemple, sur le multithreading (et ça date de 2008 !) :
http://www.devx.com/SpecialReports/Article/38883/0/page/1
Probablement, je reprendrais le contenu de Accelerated C++ (avec
éventuellement quelques modifications pour prendre C++11 en compte).
Ça reste, AMHA, la référence pour l'apprentissage du C++.
Grosso modo : std::string dès le premier chapitre ; char* vers la fin,
s'il reste du temps.
Ça n'avait déjà plus aucun sens en 2000.
Certes, connaître les structures for, if, etc., peut faire gagner du
temps lors de l'apprentissage de C++, mais pour ça, Javascript
convient largement aussi bien que C.
Non cela n'a pas vraiment de sens. C'est même un facteur de confusion
car les étudiants ou même les professionnels (ou leurs managers...)
peuvent croire, de ce fait, que C++ n'est qu'une extension de C (comme
certains clients qui me réclamaient des cours de C++ de 3 jours car
leurs troupes connaissaient déjà le langage C !).
J'ai, par ailleurs enseigné à la fois dans un mastère
de génie logiciel et dans l'industrie pour des cours en
intra et en inter entreprise. J'ai commencé à enseigner le C++
en 1991 et cette année, j'ai encore donné un cours de C++
avancé abordant la métaprogrammation, les traits, les
politiques, CRTP (Curiously Recurring Template Pattern),
Substitution Failure Is Not An Error (SFINAE), etc.
Il fut une époque où j'ai vu apparaître la STL alors
que je donnais, en entreprise, des cours d'une semaine de
C++ environ toutes les 6 semaines. C'était très difficile
car il fallait en parler mais pas en détail. Il fallait
dire juste ce qu'il faut pour que les participants puissent
"faire leur chemin" ensuite. C'est ça le plus difficile
pédagogiquement parlant.
Il me semble qu'il ne faut pas "maximiser" les nouveautés
de C++11. Elles doivent s'inscrire naturellement dans un
cours comme l'uniformisation des syntaxes d'initialisation.
Cependant, il faut faire attention à qui l'on s'adresse car
pour des professionnels, ils ne passeront pas du jour au lendemain
à C++11. Il faut donc continuer à décrire les anciennes syntaxes.
Par contre, dans l'enseignement académique, on peut y aller plus
franchement, si je puis dire.
Par contre, il faut en parler dans les cursus universitaires et,
dans l'immédiat, je laisserais plutôt le cours classique et je
ferais un chapitre de survol, à part, sur les nouveautés et, au
fur et à mesure, que les nouveautés se répandent, les intégrer da ns
le cours. Certaines se propageront plus vite que d'autres. De toutes
façon, les librairies concernant le multithreading, ne doivent pas
être abordées dans un tronc commun, il me semble.
Les bouquins viendront vite, à mon avis, mais il y a tellement de
mauvais livres sur C++ (et la programmation, en général...).
Le mieux c'est d'utiliser Internet. Il y a déjà des
choses intéressantes sur les nouveautés comme,
par exemple, sur le multithreading (et ça date de 2008 !) :
http://www.devx.com/SpecialReports/Article/38883/0/page/1
Probablement, je reprendrais le contenu de Accelerated C++ (avec
éventuellement quelques modifications pour prendre C++11 en compte).
Ça reste, AMHA, la référence pour l'apprentissage du C++.
Grosso modo : std::string dès le premier chapitre ; char* vers la fin,
s'il reste du temps.
On Tue, 13 Dec 2011 22:13:24 +0100, Wykaaa :En C++, il est clair que c'est le passage par référence constante qui
devrait être le défaut.
Pourquoi ?
Comparé au passage par valeur, le passage par référence constante
n'est qu'une optimisation, que le compilo devrait se charger de faire
lui-même.
En C++, quand tu écris
auto a= b;
a est une copie de b, quel que soit le type de a et b. (Le passage
d'arguments n'est qu'un cas particulier de copie.)
Je trouve ça bien plus simple que ce qui se passe chez Java et
Javascript : suivant le type, ça peut être une copie, ou une
référence.
On Tue, 13 Dec 2011 22:13:24 +0100, Wykaaa <wykaaa@yahoo.fr>:
En C++, il est clair que c'est le passage par référence constante qui
devrait être le défaut.
Pourquoi ?
Comparé au passage par valeur, le passage par référence constante
n'est qu'une optimisation, que le compilo devrait se charger de faire
lui-même.
En C++, quand tu écris
auto a= b;
a est une copie de b, quel que soit le type de a et b. (Le passage
d'arguments n'est qu'un cas particulier de copie.)
Je trouve ça bien plus simple que ce qui se passe chez Java et
Javascript : suivant le type, ça peut être une copie, ou une
référence.
On Tue, 13 Dec 2011 22:13:24 +0100, Wykaaa :En C++, il est clair que c'est le passage par référence constante qui
devrait être le défaut.
Pourquoi ?
Comparé au passage par valeur, le passage par référence constante
n'est qu'une optimisation, que le compilo devrait se charger de faire
lui-même.
En C++, quand tu écris
auto a= b;
a est une copie de b, quel que soit le type de a et b. (Le passage
d'arguments n'est qu'un cas particulier de copie.)
Je trouve ça bien plus simple que ce qui se passe chez Java et
Javascript : suivant le type, ça peut être une copie, ou une
référence.
J'ai vu un programme ou, en transformant tous les passages par valeurs
en références constante, on a gagné presque 30% en temps d'exécution !
J'ai vu un programme ou, en transformant tous les passages par valeurs
en références constante, on a gagné presque 30% en temps d'exécution !
J'ai vu un programme ou, en transformant tous les passages par valeurs
en références constante, on a gagné presque 30% en temps d'exécution !
Quant on voit que dans certains cours C++, on se tue encore à
montrer au tout début comment utiliser des char[] et char *,
Mais malgré tout, il y a, en contrepartie,
de très bon ouvrages (j'aime bien la série des Effective C++,
que tu sembles un peu moins apprécier, ou encore la série
des Exceptionnal C++).
Quant on voit que dans certains cours C++, on se tue encore à
montrer au tout début comment utiliser des char[] et char *,
Mais malgré tout, il y a, en contrepartie,
de très bon ouvrages (j'aime bien la série des Effective C++,
que tu sembles un peu moins apprécier, ou encore la série
des Exceptionnal C++).
Quant on voit que dans certains cours C++, on se tue encore à
montrer au tout début comment utiliser des char[] et char *,
Mais malgré tout, il y a, en contrepartie,
de très bon ouvrages (j'aime bien la série des Effective C++,
que tu sembles un peu moins apprécier, ou encore la série
des Exceptionnal C++).
On Tue, 13 Dec 2011 15:45:21 -0800 (PST), Mathieu STEFANI
:Quant on voit que dans certains cours C++, on se tue encore à
montrer au tout début comment utiliser des char[] et char *,
En fait, j'ai l'impression que pas mal de profs enseignent le C++ sans
connaître ce langage. Ils sont persuadés que c'est du C dans lequel
"malloc" s'écrit "new".
Mais malgré tout, il y a, en contrepartie,
de très bon ouvrages (j'aime bien la série des Effective C++,
que tu sembles un peu moins apprécier, ou encore la série
des Exceptionnal C++).
Il y a effectivement de très bons bouquins pour approfondir sa
connaissance du C++. En revanche, pour débuter, il me semble qu'il en
existe, en tout et pour tout, deux : Accelerated C++, et peut-être
"Programming -- Principles and Practice Using C++", par Stroustrup,
dont la taille me fait un peu peur.
Seulement deux bouquins pour débutants dans un langage aussi utilisé
que C++, ça fait peur.
On Tue, 13 Dec 2011 15:45:21 -0800 (PST), Mathieu STEFANI
<auquetal@gmail.com>:
Quant on voit que dans certains cours C++, on se tue encore à
montrer au tout début comment utiliser des char[] et char *,
En fait, j'ai l'impression que pas mal de profs enseignent le C++ sans
connaître ce langage. Ils sont persuadés que c'est du C dans lequel
"malloc" s'écrit "new".
Mais malgré tout, il y a, en contrepartie,
de très bon ouvrages (j'aime bien la série des Effective C++,
que tu sembles un peu moins apprécier, ou encore la série
des Exceptionnal C++).
Il y a effectivement de très bons bouquins pour approfondir sa
connaissance du C++. En revanche, pour débuter, il me semble qu'il en
existe, en tout et pour tout, deux : Accelerated C++, et peut-être
"Programming -- Principles and Practice Using C++", par Stroustrup,
dont la taille me fait un peu peur.
Seulement deux bouquins pour débutants dans un langage aussi utilisé
que C++, ça fait peur.
On Tue, 13 Dec 2011 15:45:21 -0800 (PST), Mathieu STEFANI
:Quant on voit que dans certains cours C++, on se tue encore à
montrer au tout début comment utiliser des char[] et char *,
En fait, j'ai l'impression que pas mal de profs enseignent le C++ sans
connaître ce langage. Ils sont persuadés que c'est du C dans lequel
"malloc" s'écrit "new".
Mais malgré tout, il y a, en contrepartie,
de très bon ouvrages (j'aime bien la série des Effective C++,
que tu sembles un peu moins apprécier, ou encore la série
des Exceptionnal C++).
Il y a effectivement de très bons bouquins pour approfondir sa
connaissance du C++. En revanche, pour débuter, il me semble qu'il en
existe, en tout et pour tout, deux : Accelerated C++, et peut-être
"Programming -- Principles and Practice Using C++", par Stroustrup,
dont la taille me fait un peu peur.
Seulement deux bouquins pour débutants dans un langage aussi utilisé
que C++, ça fait peur.
On Wed, 14 Dec 2011 01:04:43 +0100, Wykaaa :J'ai vu un programme ou, en transformant tous les passages par valeurs
en références constante, on a gagné presque 30% en temps d'exécution !
Ça me paraît beaucoup. Quel compilateur utilisais-tu ?
Par ailleurs, est-ce qu'il était nécessaire de transformer *tous* les
passages par valeur, ou bien, est-ce qu'en transformer une minorité
aurait suffi ?
On Wed, 14 Dec 2011 01:04:43 +0100, Wykaaa <wykaaa@yahoo.fr>:
J'ai vu un programme ou, en transformant tous les passages par valeurs
en références constante, on a gagné presque 30% en temps d'exécution !
Ça me paraît beaucoup. Quel compilateur utilisais-tu ?
Par ailleurs, est-ce qu'il était nécessaire de transformer *tous* les
passages par valeur, ou bien, est-ce qu'en transformer une minorité
aurait suffi ?
On Wed, 14 Dec 2011 01:04:43 +0100, Wykaaa :J'ai vu un programme ou, en transformant tous les passages par valeurs
en références constante, on a gagné presque 30% en temps d'exécution !
Ça me paraît beaucoup. Quel compilateur utilisais-tu ?
Par ailleurs, est-ce qu'il était nécessaire de transformer *tous* les
passages par valeur, ou bien, est-ce qu'en transformer une minorité
aurait suffi ?
Fabien LE LEZ a écrit :On Wed, 14 Dec 2011 01:04:43 +0100, Wykaaa :J'ai vu un programme ou, en transformant tous les passages par valeurs
en références constante, on a gagné presque 30% en temps d'exécution !
Ça me paraît beaucoup. Quel compilateur utilisais-tu ?
Je crois qu'il s'agissait du compilateur d'IBM sous AIX au milieu des
années 90, mais là n'est pas le problème, il me semble. Peux-tu me citer
UN compilateur qui transforme les passage par valeur en référence
constante ?
Fabien LE LEZ a écrit :
On Wed, 14 Dec 2011 01:04:43 +0100, Wykaaa <wykaaa@yahoo.fr>:
J'ai vu un programme ou, en transformant tous les passages par valeurs
en références constante, on a gagné presque 30% en temps d'exécution !
Ça me paraît beaucoup. Quel compilateur utilisais-tu ?
Je crois qu'il s'agissait du compilateur d'IBM sous AIX au milieu des
années 90, mais là n'est pas le problème, il me semble. Peux-tu me citer
UN compilateur qui transforme les passage par valeur en référence
constante ?
Fabien LE LEZ a écrit :On Wed, 14 Dec 2011 01:04:43 +0100, Wykaaa :J'ai vu un programme ou, en transformant tous les passages par valeurs
en références constante, on a gagné presque 30% en temps d'exécution !
Ça me paraît beaucoup. Quel compilateur utilisais-tu ?
Je crois qu'il s'agissait du compilateur d'IBM sous AIX au milieu des
années 90, mais là n'est pas le problème, il me semble. Peux-tu me citer
UN compilateur qui transforme les passage par valeur en référence
constante ?