C++ – .h ou pas de .h
Il y a quelques jours, un collègue me disait apprendre le C++. Pour cela, il avait acheté un livre dont le tout premier exemple de C++ commencait par:
#include <iostream.h>
Le .h n’est pas nécessaire et même proscrit car non-standard.
#include <iostream>
La librairie standard C++ et pas seulement la STL (Standard Template Library) est entièrement dans le namespace std et la façon ANSI d’inclure un fichier d’entête est de ne pas mettre .h. Néanmoins, le fichier avec le .h existe en général pour des raisons de compatibilité (backward compatibility). D’ailleurs, si vous regardez dans votre PC sous Ubuntu, vous trouverez deux fichiers iostream par exemple, un sans le .h et un avec:
$ slocate iostream
/usr/include/c++/4.1.3/iostream
/usr/include/c++/4.1.3/backward/iostream.h
Cette façon de faire est dépendante du vendeur de la librairie et n’est pas du tout obigatoire. Il pourrait très bien ne fournir que la version sans .h.
Posted: février 18th, 2008 under C++.
Comments: none
Tweet