Académique Documents
Professionnel Documents
Culture Documents
1. Objectif de la séance
Le but de la séance est de manipuler les notions suivantes :
Références et pointeurs
Le constructeur de recopie
Les STL
N° Propositions N° Propositions
1 int x, *ptr; 6 float level;
&x = ptr; int fptr = &level;
4 int numbers[] = {10, 20, 30, 40, 50}; 9 const int array[] = {1,2,3} ;
cout << "The third element in the array is "; int *ptr = array ;
cout << *numbers + 3 << endl;
dptr = books;
dptr = brochure;
books = brochure;
brochure = dptr;
Une association de charité a reçu les sommes d’argents suivants dans l’ordre suivant
100 DT 520 DT 30 DT 70 DT 90 DT 25 DT 60 DT 50 DT 45 DT 65 DT
Cette association veut trier les sommes qu’elle a reçues, dans un ordre croissant, sans pour autant perturber
l’ordre de réception des sommes d’argent.
Ecrivez une classe (proposez sa nomination) et proposez deux méthodes permettant de trier le tableau des
sommes d’argent dans l’ordre croissant. Affichez le tableau avec les sommes non triées et le tableau avec les
sommes triées.
3. Le constructeur de recopie
C’est quoi l’intérêt d’un constructeur par recopie ?
5. Homework : Map
Ecrivez une classe pour résoudre cet exercice (à vous de choisir son nom)
Développez la méthode add_event pour rajouter un évènement (vous utiliserez
b. Annexe : Map
Les éléments du conteneur « Map » sont une paire formée d’une clé jumelée à une valeur
Les éléments sont triés selon leur clé.
Chacune des clés ne peut exister qu’une fois
On rajoute « #include<map> » pour pouvoir utiliser ce conteneur.
Exemple 1 d’insertion dans la map
std::map<std::string,unsigned> map_mois_idx;
map_mois_idx["janvier"] = 1;
map_mois_idx["février"] = 2;
Pour parcourir les éléments d’un conteneur de type map, nous aurons besoin d’un itérateur.
#include <iostream>
#include <map>
int main ()
{
std::map<char,int> mymap;
mymap['b'] = 100;
mymap['a'] = 200;
mymap['c'] = 300;
// show content:
for (std::map<char,int>::iterator it=mymap.begin();
it!=mymap.end(); ++it)
//First refers to the Key & Second refers to the Value
std::cout << it->first << " => " << it->second << '\n';
return 0;
}
Pour déterminer d’autres fonctions pouvant être appelées sur le conteneur map, visitez ce
site : http://www.cplusplus.com/reference/map/map/#types