Éditions Eyrolles

Groupe Eyrolles

Programmez en langage C++ 5ème édition de Claude Delannoy

Dialoguez avec l'auteur :

N'hésitez pas à faire part de vos remarques à Claude Delannoy par email

Codes source

Compatibilité avec les compilateurs

Ces programmes ont notamment été testés :

Le compilateur GNU

  • ne reconnaît pas l'option nothrow dans chap4/new.cpp,
  • ne reconnaît pas boolalpha et noboolalpha dans chap16/format.cpp,
  • ne connaît pas la fonction assign dans chap21/recherc.cpp,
  • ne connaît pas les fonctionnalités correspondant au fichier en-tête sstream des programmes chap22/istrings.cpp, chap22/ostrings.cpp et chap22/lecclav.cpp  cela signifie qu'il faut continuer de recourir aux anciennes fonctionnalités offertes par le fichier en-tête strstream,
  • ne connaît pas toutes les fonctionnalités du type bitset dans le programme chap23/ bitset.cpp.

La version mentionnée de Sun Workshop

  • ne reconnaît pas la spécification d'interface throw(int) dans chap17/interf.cpp,
  • ne reconnaît pas la fonction insert dans chap20/map.cpp et chap20/multimap.cpp,
  • ne reconnaît pas toutes les fonctionnalités du type bitset du programme chap23/bitset.cpp,
  • ne reconnaît pas l'expression polar<double> du programme chap23/complex.cpp.

Avec Visual C++ version 6

Quelques programmes nécessitent une petite modification pour compenser les écarts à la norme  plus précisément :

  • Il faut incorporer la définition des classes dans l'espace de noms std, en procédant ainsi :

namespace std
{
// code existant
}

Cela concerne les programmes chap09/addpt1.cpp, chap10/addpoint.cpp et chap10/addcomp.cpp 

  • Il faut préfixer les noms d'opérateurs définis comme fonctions amies d'une classe par std:: dans l'en-tête de leur définition  cela concerne les programmes chap11/patmin3.cpp et chap16/point.cpp ainsi que les corrections d'exercices correxos/ix3b.cpp et correxos/ix4b.cpp.

Le programme chap4/new_hand.cpp ne fonctionne pas, mais on peut recourir à  _set_ new_handler au lieu de set_new_handler

  • Les fonctionnalités concernant le R.T.T.I. ne sont pas toutes disponibles et les programmes chap15/name.cpp, chap15/egal1.cpp et chap15/egal2.cpp ne fonctionnent pas.