Présentation

Article

1 - EXEMPLE 1 : ENSEMBLES D’ENTIERS

  • 1.1 - Première ébauche de solution
  • 1.2 - Surdéfinition du constructeur par recopie
  • 1.3 - Surdéfinition de l’affectation

2 - EXEMPLE 2 : UTILISATION D’UN PATRON DE CLASSES

3 - EXEMPLE 3 : LISTE HÉTÉROGÈNE

Article de référence | Réf : S8066 v1

Exemple 2 : utilisation d’un patron de classes
Programmation en langage C++ - Exemples

Auteur(s) : Claude DELANNOY

Date de publication : 10 sept. 2003

Pour explorer cet article
Télécharger l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !

Sommaire

Présentation

Version en anglais English

RÉSUMÉ

Cet article présente trois exemples de programmes utilisant les fonctionnalités du langage orienté objet C++. Le premier exemple illustre l'utilisation des classes, à travers la manipulation d'ensembles d'entiers. Le second exemple traite des patrons de classe. Et le troisième concerne la création d'une classe permettant de gérer une liste chaînée d’objets de types différents.

Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.

Lire l’article

Auteur(s)

  • Claude DELANNOY : Ingénieur de l’ENSEM (École nationale supérieure d’électricité - et de mécanique) de Nancy - Ingénieur informaticien au CNRS (Centre national de la recherche scientifique)

INTRODUCTION

Nous proposons quelques exemples de programmes illustrant la plupart des fonctionnalités de C++ que nous venons de présenter dans l’article [S 8 065].

Cet article est réservé aux abonnés.
Il vous reste 93% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

DOI (Digital Object Identifier)

https://doi.org/10.51257/a-v1-s8066


Cet article fait partie de l’offre

Automatique et ingénierie système

(139 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Présentation
Version en anglais English

2. Exemple 2 : utilisation d’un patron de classes

Dans le précédent exemple, nous avons volontairement évité de recourir aux composants standards.

Or, si l'on ne s'intéresse qu'aux seules fonctionnalités de la classe, en dehors de la sortie sur un flot, celles-ci sont fournies intégralement par le composant standard set<int> (son utilisation nécessite l’inclusion du fichier en-tête set). En ce qui concerne la sortie sur un flot, on dispose de plusieurs démarches. On peut bien sûr la programmer au fur et à mesure des besoins, en écrivant à chaque fois les quelques instructions de parcours de l'ensemble :

Exemple

set<int> ens ;

set<int>::iterator ie ;

.....

for (ie=ens.begin() ; ie!=ens.end() ; ie++) cout << *ie << " " ;

On peut aussi en faire une fonction ordinaire, comme dans cet exemple, analogue à l'exemple d'utilisation précédent.

Exemple

Premier exemple d’utilisation de la classe set<int>

#include <iostream>

#include <set>// pour set<int>

using namespace std ;

void affiche (set<int>) ;

main()

{void fct (set<int>) ;

void fctref (set<int> &) ;

set<int> ens ;

cout << "donnez 10 entiers \n" ;

int i, n ;

for (i=0 ; i<10 ; i++)

{ cin >> n ;

ens.insert(n) ;

}

cout << "il y a : " << ens.size() << " entiers differents\n" ;

cout << "qui forment l\'ensemble : " ; affiche(ens) ;

fct (ens) ;

cout << "au retour de fct, il y en a " << ens.size() << "\n" ;

cout << "qui forment l\'ensemble : " ; affiche(ens) ;

fctref (ens) ;

cout << "au retour de fctref, il y en a " << ens.size() << "\n" ;

cout << "qui forment l\'ensemble : " ; affiche(ens) ;

cout << "appartenance de -1 : " << ens.count(-1) << "\n" ;

cout << "appartenance de 500 : " << ens.count(500) << "\n" ;

set<int> ensa, ensb ;

ensa = ensb = ens ;

cout << "ensemble a : " ; affiche(ensa) ;

cout << "ensemble b : " ; affiche(ensb) ;

}

void fct (set<int> e)

{cout << "ensemble reçu par fct : " ; affiche(e) ;

e.insert(-1) ; e.insert(-2) ; e.insert(-3) ;

}

void fctref (set<int> & e)

{cout << "ensemble recu par fctref : " ; affiche(e) ;

e.insert(-1) ; e.insert(-2) ; e.insert(-3) ;

}

void affiche (set<int> e)

{set<int>::iterator ie ;

cout << "[ " ;

for (ie=e.begin() ; ie!=e.end()...

Cet article est réservé aux abonnés.
Il vous reste 94% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Automatique et ingénierie système

(139 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Exemple 2 : utilisation d’un patron de classes
Sommaire
Sommaire

Cet article est réservé aux abonnés.
Il vous reste 92% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Automatique et ingénierie système

(139 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS