C++
Introduction
Le langage C++ a été inventé par Bjarne Stroustrup afin de combler les lacunes du C. Il apporte ainsi la programmation objet, ainsi qu'une bibliothèque de conteneurs extrêmement utile : la Standard Template Library (STL).Sous Linux on utilise le compilateur g++.
Edition du fichier
emacs mon_fichier.cc & (ou mon_fichier.cpp)Compilation
g++ mon_fichier.cc -o mon_executableRemarque : si on veux que le compilateur affiche les messages non traduits il suffit de taper
LC_ALL=posix g++ mon_fichier.cc -o mon_executable
Execution
./mon_executableQuelques exemples
Vous pouvez télécharcher des exemples.Obtenir le code source
Accès web
http://svn.berlios.de/viewvc/openphysic/cpp/tutorial_cppAccès anonyme
svn checkout svn://svn.berlios.de/openphysic/cpp/tutorial_cppAccès développeur
svn checkout svn+ssh://scls19fr@svn.berlios.de/svnroot/repos/openphysic/cpp/tutorial_cppDocumentation / Tutoriels
http://www.cplusplus.com/referencevoir aussi C
http://www.xgarreau.org/aide/devel/cpp (français)
Thinking in C++ - Bruce Eckel (anglais)
http://mindview.net/Books/TICPP/ThinkingInCPP2e.html
http://bruce-eckel.developpez.com/livres/cpp/ticpp
Traduction - Penser en C++
http://bruce-eckel.developpez.com/livres/cpp/traduction/ticpp2vol1
Le méga cours de C/C++ - Christian Casteyde (français)
http://casteyde.christian.free.fr/cpp/cours/index.html
Laurent Henocque - ESIL - Univ. de la méditerranée (français)
http://pages-perso.esil.univmed.fr/~henocque.1/cours.html
http://pages-perso.esil.univmed.fr/~chaouiya/C++/coursCourcelle/index.html
Olivier Caron - EDIL - Université de Lille I (français)
http://www.iut-bethune.univ-artois.fr/~caron/courscpp/courscpp.html
Divers liens
http://www.fresnel.fr/perso/derrode/SiteInfo/SiteInfo.html
Livres
Programmer en C++ - Claude Delannoy - EyrollesLe langage C++ - Bjarne Stroustrup - Campus Press - Pearson Education
Bibliothèques
Bibliothèques graphiques
Essayez ces exemples de GUI en C++
Obtenir le code source
Accès web
http://svn.berlios.de/viewvc/openphysic/cpp/guiAccès anonyme
svn checkout svn://svn.berlios.de/openphysic/cpp/guiAccès développeur
svn checkout svn+ssh://scls19fr@svn.berlios.de/svnroot/repos/openphysic/cpp/guiEssayez ces exemples en C avec GTK++
Obtenir le code source
Accès web
http://svn.berlios.de/viewvc/openphysic/c/gui/gtk+Accès anonyme
svn checkout svn://svn.berlios.de/openphysic/c/gui/gtk+Accès développeur
svn checkout svn+ssh://scls19fr@svn.berlios.de/svnroot/repos/openphysic/c/gui/gtk+Calcul numérique, algèbre linéaire...
Bibliothèques diverses
Bibliothèques spécifiques au C++
Standard Template Library http://www.sgi.com/tech/stl/Boost http://www.boost.org
STLport http://www.stlport.org
Environnement de développement intégré
Sous Windows, il existe un IDE libre : DevCpp.L'avantage de cet environnement est de posséder le même compilateur que sous Linux (g++) ainsi qu'une couche d'Unix pour Windows (MinGW).
Il existe également Code::Blocks http://www.codeblocks.org
Sous Linux, on peut utiliser
- Anjuta (GNOME / C)
- KDevelop (KDE / C++)
- Eclipse (Java) avec le plugin CDT.
- QTdesigner (QT / C++)
Déboguer
Le plus gros travail du développeur consiste à tester son travail, et à résoudre des problèmes de programmation.Un débogueur peut l'aider à effectuer un tel travail.
gdb est un débogueur en mode texte.
ddd est une interface graphique pour gdb.
xxgdb est une (autre) interface graphique pour gdb... un peu moins conviviale que ddd
insight http://sources.redhat.com/insight/
strace est un traceur d'appels système http://www.liacs.nl/~wichert/strace
ltrace http://packages.debian.org/unstable/utils/ltrace.html
splint est un analyseur statique de code C
leaktracer et valgrind permettent de vérifier l'absence de fuite mémoire
ElectricFence http://perens.com/FreeSoftware/ElectricFence/
voir aussi : DevelOutilsGNU
Autres outils
diff / patch permettent de réaliser des patchsTous les exemples
Obtenir le code source
Accès web
http://svn.berlios.de/viewvc/openphysic/cppAccès anonyme
svn checkout svn://svn.berlios.de/openphysic/cppAccès développeur
svn checkout svn+ssh://scls19fr@svn.berlios.de/svnroot/repos/openphysic/cppNormes
SO/CEI 14882:1998 (Standard C++)ISO/CEI 14882:2003
A venir : C++0x
http://fr.wikipedia.org/wiki/C%2B%2B0x
There are no comments on this page. [Add comment]