Chap1 : quelques éléments de 
base du C++ 
M. DIENG Abdoulaye 
Introduction au C++
Sommaire 
1. Entrée et sortie de base 
2. Type booléen 
3. Référence 
4. Fonctions 
5. Gestion dynamique de la mémoire
Entrée et sortie de base 
présentation 
• Permettent l’interactivité entre le programme et l’utilisateur 
• cin, le flux s...
Entrée et sortie de base 
exemple & application 
• Exemple : 
#include<iostream> 
using namespace std; 
int main(){ 
cout ...
Le type booléen 
• Type : bool 
• Valeur : true ou false 
• L'opérateur logique (!) peut être utilisé pour changer une val...
Référence 
• Une référence est un alias d'une variable. 
• Une référence doit être initialisée à sa déclaration. 
• Syntax...
Les fonctions 
passage par référence (présentation) 
• Faire suivre le type de l’argument formel d’un & : 
<typeRslt> <nom...
Les fonctions 
paramètre par défaut 
• Permet de simplifier les appels de fonctions comportant un 
(ou des) paramètre(s) q...
Les fonctions 
surcharge 
• La surcharge consiste à créer des fonctions de même nom 
avec des paramètres différents (en no...
Les fonctions 
inline 
• Le mot inline permet de définir une fonction qui sera 
remplacée par son code à chaque appel. 
• ...
Gestion dynamique de la mémoire 
• La gestion dynamique de la mémoire consiste à allouer et 
libérer des emplacements mémo...
Prochain SlideShare
Chargement dans…5
×

cpp1 : Quelques elements de base du C++

319 vues

Publié le

.Entrée et sortie de base
Type booléen
Référence
Fonctions
Gestion dynamique de la mémoire

Publié dans : Logiciels
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
319
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

cpp1 : Quelques elements de base du C++

  1. 1. Chap1 : quelques éléments de base du C++ M. DIENG Abdoulaye Introduction au C++
  2. 2. Sommaire 1. Entrée et sortie de base 2. Type booléen 3. Référence 4. Fonctions 5. Gestion dynamique de la mémoire
  3. 3. Entrée et sortie de base présentation • Permettent l’interactivité entre le programme et l’utilisateur • cin, le flux standard d'entrée associé au clavier • cout, le flux standard de sortie associé à l’écran • Ces flux s’utilisent grâce à ces deux lignes : #include <iostream> using namespace std; • L’écriture sur cout se fait à l'aide de l’opérateur d'injection <<. • La lecture sur cin se fait à l'aide de l’opérateur d'extraction >>. • Syntaxe cout << "chaine de caractères" << var ou expr << … cin >> variable1 >> variable2 >> …
  4. 4. Entrée et sortie de base exemple & application • Exemple : #include<iostream> using namespace std; int main(){ cout << "Entrez un entier : "; int i(0); cin >> i; cout << "Le carre de " << i << " est "<< i*i<< endl; return 0; }
  5. 5. Le type booléen • Type : bool • Valeur : true ou false • L'opérateur logique (!) peut être utilisé pour changer une valeur booléenne de true à false, ou de false à true • Les valeurs booléennes sont évaluées à 1 (true) ou 0 (false) • L’entier nul vaut false et tout entier non nul vaut true • Exemple : bool estDemarree=false; if (!estDemarree) cout << "La voiture est eteinte, l'aiguille est a " << estDemarree << endl; else cout << "La voiture est demarree, l'aiguille est a " << estDemarree << endl;
  6. 6. Référence • Une référence est un alias d'une variable. • Une référence doit être initialisée à sa déclaration. • Syntaxe de déclaration : <type> & <identificateur>=<variable> • Une fois initialisée, une référence ne peut plus être modifiée. • Exemple : int unEntier=3; int & aliasDunEntier=unEntier; aliasDunEntier=13;// unEntier vaut maintenant 13
  7. 7. Les fonctions passage par référence (présentation) • Faire suivre le type de l’argument formel d’un & : <typeRslt> <nomFonction>( typeArg& nomArg, …) • Pas de copie de l’argument effectif => + de performance. • Possibilité de modification de l’argument effectif. • Pour empêcher la modification de l’argument effectif, faire précéder le type de l’argument formel de const: <typeRslt> <nomFonction>( const typeArg& nomArg, …)
  8. 8. Les fonctions paramètre par défaut • Permet de simplifier les appels de fonctions comportant un (ou des) paramètre(s) qui varie(nt) peu. • Exemple : – Déclaration : float f (char, int=10, char * ="Tout"); – Appels : f(c,t,"rien") f(c,t) // <=> f(c,t,"Tout") f(c) // <=> f(c,10,"Tout") f() // ERREUR • Les paramètres par défaut doivent être les derniers de la liste. float f (char='a', int, char * ="Tout"); // erreur
  9. 9. Les fonctions surcharge • La surcharge consiste à créer des fonctions de même nom avec des paramètres différents (en nombre et/ou en type). • Le compilateur détermine la fonction appelée en se basant sur le type et/ou le nombre des arguments effectifs. • Exemple : float max (float,float); float max (float,float,float); float max (int,float []); void main(){ float x,y,z; float tab[]={1.2, 2.3, 3.4, 4.5}; x=max(2.5,3.14); y=max(2.5,3.14,4.6); z=max(2,tab); } • NB : le type de retour n’intervient pas float max (int,float); double max (int,float); // erreur
  10. 10. Les fonctions inline • Le mot inline permet de définir une fonction qui sera remplacée par son code à chaque appel. • L'avantage est que l'exécution du programme sera plus rapide • À n’utiliser que pour des fonctions très courtes • Le compilateur doit disposer de la définition de la fonction en ligne au moment de traiter un appel à celle-ci. • Exemple : inline int minimum(int a,int b){ return (a<b)?a:b; } int main(){ cout << "La plus petite valeur " << "entre 2 et 3 est : " << minimum(2,3); return 0; }
  11. 11. Gestion dynamique de la mémoire • La gestion dynamique de la mémoire consiste à allouer et libérer des emplacements mémoire au moment de l’exécution. • new <type>; alloue l’emplacement pour un seul élément du type indiqué. • new <type>[<n>]; alloue l’emplacement pour n éléments du type indiqué. • Utiliser (nothrow) juste après new permet de gérer l’échec (new retourne NULL) de la requête d’allocation. • delete <pointeur>; ou delete [] <pointeur>; libère un bloc mémoire précédemment alloué via new.

×