• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Partie 1: Notions de base — Programmation orientée objet en C++
 

Partie 1: Notions de base — Programmation orientée objet en C++

on

  • 1,513 views

Support material for a continued education course "Introduction to object oriented programming in C++".

Support material for a continued education course "Introduction to object oriented programming in C++".
In French.

Statistics

Views

Total Views
1,513
Views on SlideShare
1,513
Embed Views
0

Actions

Likes
1
Downloads
70
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Partie 1: Notions de base — Programmation orientée objet en C++ Partie 1: Notions de base — Programmation orientée objet en C++ Presentation Transcript

    • Programmation Orientée Objet en C++ Première Partie: Notions de Base Fabio Hernandez Fabio.Hernandez@in2p3.fr
    • Vue dEnsemble Notions de base Types, variables, opérateurs Contrôle dexécution Fonctions Mémoire dynamique Qualité du logiciel Evolution du modèle objet Objets et classes Fonctions membres Classes génériques Héritage Polymorphisme Héritage multiple Entrée/sortiePOO en C++: Notions de Base 4 © 1997-2003 Fabio HERNANDEZ
    • Table des Matières Pour commencer... Fichiers sources Commentaires Construction de l’exécutable Le pré-processeur Commande de compilation A propos de l’entrée/sortie en C++POO en C++: Notions de Base 5 © 1997-2003 Fabio HERNANDEZ
    • Pour commencer... Tout programme doit avoir un point d’entrée nommé main int main() { return 0; } main est la fonction appelée par le système d’exploitation lors de lexécution du programme { et } délimitent le corps de la fonction main retourne un entier au système: 0 (zéro) veut dire succès Chaque expression doit finir par ; (point virgule)POO en C++: Notions de Base 6 © 1997-2003 Fabio HERNANDEZ
    • Fichiers Sources Un programme est généralement constitué de plusieurs modules Chaque module est composé de deux fichiers sources: un fichier contenant la description de l’interface du module un fichier contenant l’implémentation proprement dite du module Un suffixe est utilisé pour déterminer le type de fichier .h .H .hpp .hxx pour les fichiers de description d’interface (header files ou include files) .C .cc .cxx .cpp .c++ pour les fichiers d’implémentation Dans un fichier source on peut trouver: commentaires instructions pré-processeur instructions C++POO en C++: Notions de Base 7 © 1997-2003 Fabio HERNANDEZ
    • Commentaires C et C++ /* Un commentaire en une seule ligne */ /* * Un commentaire sur plusieurs * lignes */ C++ uniquement // Un commentaire jusqu’à la fin de cette ligne // // Un commentaire sur plusieurs // lignes //POO en C++: Notions de Base 8 © 1997-2003 Fabio HERNANDEZ
    • Construction de l’Exécutable Précompilation Compilation 01101 Edition des liens 10010 11101 example.o 10101example.cpp example.i 10110 00101 01001 example 01010 11100 bibliotèquesfichiers .h autres modules POO en C++: Notions de Base 9 © 1997-2003 Fabio HERNANDEZ
    • Le pré-processeur Filtre utilisé avant la compilation de chaque module Capable de: suppression des commentaires inclusion d’autres fichiers expansion des macro-définitions compilation conditionnelle # doit être le premier caractère non blanc de la ligne Quelques instructions utiles: include, define, undef, if...else...endif, ifdef...else...endif, ifndef...else...endif, error, pragmaPOO en C++: Notions de Base 10 © 1997-2003 Fabio HERNANDEZ
    • Le pré-processeur(suite) Inclusion de fichiers #include <iostream> #include "MyFileManager.h" Macro-definitions #define MAX_FILES 60 #define ADD(a,b) (a+b) Compilation conditionnelle #if defined(__hpux) // Put here HP-UX specific C++ code #elif defined(linux) // Put here LINUX specific C++ code #else // Put here C++ code for any other platform #endifPOO en C++: Notions de Base 11 © 1997-2003 Fabio HERNANDEZ
    • Commande de Compilation Dépend de l’environnement (plate-forme + compilateur + outils) Sous AIX avec le compilateur IBM xlC -o myTest test.C Sous HP-UX avec le compilateur HP aCC -o myTest test.C Sous toutes les plate-formes avec le compilateur GNU g++ -o myTest test.C Pour exécuter faire myTest Pour les environnements Windows ou Mac (Borland, Microsoft, Symantec, Watcom, MetroWerks...) voir la doc du produitPOO en C++: Notions de Base 12 © 1997-2003 Fabio HERNANDEZ
    • A propos de l’entrée/sortie en C++ E/S ne fait pas partie de C++ même Supportée par une bibliothèque appelée iostream, elle même écrite en C++ Entrée en provenance de la console (entrée standard) est récupérée via cin Sortie dirigée vers la console (sortie standard) est envoyée via cout Sortie dirigée vers la sortie standard des erreurs est envoyée via cerr cin, cout et cerr sont prédéfinis et directement utilisables par tout programme C++POO en C++: Notions de Base 13 © 1997-2003 Fabio HERNANDEZ
    • A propos de l’entrée/sortie en C++(suite) L’opérateur << est utilisé pour envoyer des messages vers cout et cerr Exemple Hello, World #include <iostream> // Standard C++ I/O void main() { cout << "Hello, World" << endl; }POO en C++: Notions de Base 14 © 1997-2003 Fabio HERNANDEZ
    • A propos de l’entrée/sortie en C++(suite) Accepte aussi des expressions plus complexes #include <iostream> // Standard C++ I/O int main() { cout << "Starting..." << endl; cout << "The result of 120+45 equals " << 120+45 << endl; return 0; } iostream contient des declarations nécessaires pour le système d’entrée/sortie de C++ endl est utilisé pour contrôler le changement de lignePOO en C++: Notions de Base 15 © 1997-2003 Fabio HERNANDEZ
    • A propos de l’entrée/sortie en C++(suite) L’opérateur >> est utilisé pour extraire des données de cin (lentrée standard) Exemple #include <iostream> // Standard C++ I/O int main() { int value1; int value2; cout << "Enter two integers: " << endl; cin >> value1 >> value2; cout << "Values entered are: " << value1 << " and " << value2 << endl; cout << "value1+value2 =" << value1 + value2 << endl; return 0; }POO en C++: Notions de Base 16 © 1997-2003 Fabio HERNANDEZ