ERRATA
De façon générale, toutes les corrections à l'œuvre originale données par l'auteur avant septembre 2010 ont été intégrées à l'édition
française. On ne trouve donc ici que les corrections plus récentes et leurs dates sont indiquées. La notation (F) indique les
corrections exclusives à la version française. La plupart des corrections sont des améliorations : il
n'est donc pas nécessaire d'appliquer systématiquement les corrections à votre copie du livre, cette
liste vous permettra plutôt de vérifier votre compréhension en cas de doute. (dernière mise à jour 2012-12-27)
La notation s/texte/correction/ indique qu'il faut remplacer le « texte » par la « correction » indiquée.
- Page II (F) [2010-10-04]
- s/Addisson/Addison/ quatre fois
- Page 60 (F) [2012-12-27]
- s/1 mile = 1 609 kilomètres/1 mile = 1,609 kilomètres/
- Page 107 [2010-10-30]
- s/et type d'argument)/et types des arguments)/
- Page 109 [2010-10-30]
- s/Cela suffit/Cette approche est suffisante/
- Page 255 [2010-10-28]
- À la fin de l'entraînement 1, ajouter « Indice : #include <iostream> est nécessaire pour cin. »
- Page 287 [2010-10-30]
- s/Date& default_date()/const Date& default_date()/
- Page 288 (F) [2012-08-20]
- s/switch (unit)/switch (m)/
- Page 371 [2011-07-13]
- s/1450x1050/1400x1050/
- Page 395 [2011-07-13]
- s/Window.ccp/Window.cpp/
- Page 419 [2010-11-05]
- Remplacer la définition de set_radius par
void set_radius(int rr)
{
set_point(0,Point(center().x-rr,center().y-rr)); // conserver le centre
r = rr;
}
- Page 421 [2010-11-05]
- Remplacer les définitions de set_minor et set_major par
void set_major(int ww)
{
set_point(0,Point(center().x-ww,center().y-h)); // conserver le centre
w = ww;
}
void set_minor(int hh)
{
set_point(0,Point(center().x-w,center().y-hh)); // conserver le centre
h = hh;
}
- Page 446 [2010-09-13]
- s/line_color/lcolor/
- Page 447 [2010-09-13]
- s/restorer la couleur et la forme/restorer la couleur et le style/
- Page 450 [2011-07-13]
- s/const Open_polyline&/Open_polyline&/
- Page 450 (dans la figure) [2010-09-15]
- s/line_color/lcolor/ deux fois et ajouter fcolor
- Page 453 (dans chacune des deux figures) [2010-09-15]
- s/line_color/lcolor/ deux fois et ajouter fcolor
- Page 473 [2010-11-05]
- s/20,20/30,30/ deux fois
- Page 481 [2010-10-04]
- Remplacer le dernier paragraphe (qui se termine à la page 482) par :
Rappelez-vous, les calculs en virgule
flottante ne sont pas corrects d'un point de vue mathématique. Les nombres en virgule flottante représentent une approximation des nombres réels
aussi proche que le permet le nombre de bits fixe alloué pour leur stockage. Un int déborde si on y place un entier trop grand, tandis
qu'un double conserve une approximation. Lorsque j'ai vu le curieux résultat obtenu pour les grands nombres de termes, j'ai d'abord cru
que notre calcul produisait des valeurs qui ne pouvaient être représentées par des double et qui auraient fait diverger notre résultat
de la réponse mathématique correcte. Ensuite, j'ai plutôt réalisé que fac() produisait des valeurs qui ne pouvaient être conservées
dans un int. En modifiant fac() pour qu'elle produise un double, le problème serait résolu. Pour plus
d'informations, voir l'exercice 11 du chapitre 5 ou la section 24.2.
- Page 634 [2010-12-28]
- s/elem(a.allocate(n))/elem(alloc.allocate(n))/
- Page 635 [2010-10-22]
- Remplacer
for (int i=0; i<sz; ++i)
this->alloc.construct(&b.elem[i],this->elem[i]); // copie
par
uninitialized_copy(b.elem,&b.elem[this->sz],this->elem); // copie
- Page 635 (F) [2010-10-22]
- Remplacer
for (int i=0; i<sz; ++i)
this->alloc.destroy(this->elem[i]); // destruction de l'ancien
par (seule la première ligne est différente)
for (int i=0; i<this->sz; ++i)
this->alloc.destroy(this->elem[i]); // destruction de l'ancien
- Page 657 [2010-11-15]
- s/iterator(Link* p)/iterator(Link<Elem>* p)/
- Page 666 [2010-10-19]
- s/++first;/first = ++p;/
- Page 668 [2011-07-13]
- s/delete()/erase()/
- Page 673 [2010-10-04]
- s/enregistrer l'indice de l'élément à effacer/enregistrer l'indice de l'élément à insérer/
- Page 674 [2010-11-05]
- s/typedef T* const_iterator/typedef const T* const_iterator/
- Page 781 [2010-11-05]
- s/sender.equal_range("John Doe");/sender.equal_range("John Doe <jdoe@machine.example>");/
- Page 782 (F) [2010-11-05]
- s/<jdoe@machine./<jdoe@machine"/
- Page 782 (F) [2010-11-05]
- s/example>");/".example>");/
NOTE : Les corrections aux chapitres non traduits sont disponibles sur le site de l'auteur.
|