0% ont trouvé ce document utile (0 vote)
34 vues18 pages

Introduction à la POO en C++

Transféré par

faresattig09
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
34 vues18 pages

Introduction à la POO en C++

Transféré par

faresattig09
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Programmation Orientée

Objet en C++
Soulaïmen SMAOUI
2021
● Objectif

Historique
Introduction ●

● C++ vs C
Objectif

● Maîtriser la programmation Orientée Objet

● Se familiariser avec la notion de Classe et d’Objet

● Apprendre les techniques de partage de code


Historique
Le langage C
développé par : ANSI Standard
Dennis Ritchie(Bell Labs) C++ 1.0 C++ [revised]

1972 1983 1985 1998 2003...

C avec la notion de
ANSI Standard
Classes
Développé par : C++
Bjarne Stroustrup
Evolution de la POO
C++ vs C

#include <stdio.h>
/* My first C program! */
int main(void)
{
printf("hello, world\n");
return 0;
}
C++ vs C
using namespace std;
#include <iostream>
// My first C++ program!
int main(void)
{
cout << "hello world!" << endl;
return 0;
}
Les programmes en C sont aussi des programmes en C++

C C++
● inline
● macros
● pointeurs ● références
● malloc et free ● new et delete
● tableau et char* ● vector et string
● struct ● classes
● Programmation procédurale
● classes et templates
Nouveaux mots clés (réservés)

En plus des mots clés hérités du C, le C++ ajoute:

Exceptions catch, throw, try

bool, class, enum, explicit, export, friend, inline,


mutable, namespace, operator, private, protected,
Déclarations: public, template, typename, using, virtual, volatile,
wchar_t
and, and_eq, bitand, bitor, compl, const_cast, delete,
dynamic_cast, false, new, not, not_eq, or, or_eq,
Expressions: reinterpret_cast, static_cast, this, true, typeid, xor,
xor_eq
Structure d’un programme en C++

#include <iostream>
using namespace std;

int main()
{
déclaration(s)
instruction(s)
return 0;
}
Flux d’entrées-sorties

cout: Flux de sortie standard du programme (Console Output : sortie console)

syntaxe: cout << <expression>

cout<<” hello”; // Affiche hello sur la console

cin: Flux d’entrée standard du programme (Console Input : entrée console)

syntaxe: cin >> <variable>

cin>> X; // lecture au clavier de la valeur de la variable X


Les pointeurs
int a;
int *aPtr; // un pointeur sur entier
aPtr = &a; // address de a affectée à aPtr

*aPtr = 100; // contenu de a affectée par 100

variable valeur Addresse en hex



a 100 1F8A26D4
aPtr 1F8A26D4 1F8A26D0

Les références
La déclaration d’une référence est de la forme suivante :

<type> & <nom> = <nom var>;

Une référence est un alias pour une autre variable:


Les références

Exemple 1: a,ar 30
int a = 30;
int &ar = a; // référence (alias)
ar = ar + 1; // incrémentation de a

Une fois initialisée, la référencés ne peut pas être changée.


Utilisée généralement pour le passage de paramètres des fonctions.
Les références

Exemple 2:
float A, B;
float &Ar = A; // correct : Ar est une référence sur A
float &Br; // erreur : pas de variable à laquelle se référer
float &Ar = B; // erreur : Re-définir une référence est interdit
Les références avec les fonctions

Exemple 3 :
// version erronée
void permute(int a, int b)
{
int aux; // variable auxiliaire
aux = a;
a = b;
b = aux;
}
// pas de permutation ( passage par valeur)
Les références avec les fonctions

Exemple 3 :
// version avec pointeur (C et C++)
void permute(int *a, int *b)
{
int aux; // variable auxiliaire
aux = *a;
*a = *b;
*b = aux;
}
//Appel de la fonction:
permute(&X, &Y); // Avec &X et &Y sont les adresses de X et Y
// Permutation correcte( passage par adresse)
Les références avec les fonctions

Exemple 3 :
// version avec référence(C++)
void permute(int &a, int &b)
{
int aux; // variable auxiliaire
aux = a;
a = b;
b = aux;
}
//Appel de la fonction:
permute(X, Y); // Avec X et Y sont des int
// Permutation correcte( passage par référence)

Vous aimerez peut-être aussi