Quick links: Tutorial - Examples - Files - Symbols.
Classes: Hierarchy - Index - List - Members.
Namespaces: Index - base - cs - display.

Public Member Functions | Protected Attributes | List of all members
cogitant::Set_Simple< SetContent > Class Template Reference

Implantation au plus simple d'un ensemble. More...

#include "cogitant/set_simple.h"

Inheritance diagram for cogitant::Set_Simple< SetContent >:
cogitant::Set< SetContent > cogitantcs::SetClient< SetContent >

Public Member Functions

iSet iAdd (SetContent const &c)
 Ajout d'un élément à l'ensemble. More...
 
void iDelete (iSet i)
 Suppression d'un élément à l'ensemble. More...
 
void iReplace (iSet i, SetContent const &v)
 Remplace la valeur d'un élément par une autre valeur. More...
 
void reserve (nSet s)
 Réservation d'espace dans l'ensemble. More...
 
void clear ()
 Vider. More...
 
nSet maxSize () const
 Taille maximale de l'ensemble. More...
 
nSet size () const
 Taille actuelle de l'ensemble. More...
 
SetContent const & iGetContent (iSet i) const
 Accès à un élément de l'ensemble. More...
 
SetContent & iGetContent (iSet i)
 Accès à un élément de l'ensemble. More...
 
iSet iFind (SetContent const &c) const
 Recherche d'un élément dans l'ensemble. More...
 
Constructeurs - destructeur.
 Set_Simple ()
 Constructeur d'un ensemble vide. More...
 
 Set_Simple (Set< SetContent > const &c)
 Constructeur par recopie. More...
 
virtual ~Set_Simple ()
 Destructeur. More...
 
- Public Member Functions inherited from cogitant::Set< SetContent >
 Set ()
 Constructeur d'un ensemble vide. More...
 
 Set (Set< SetContent > const &c)
 Constructeur par recopie. More...
 
virtual ~Set ()
 Destructeur. More...
 
virtual void findAndDelete (SetContent const &c)
 Suppression d'un élément à l'ensemble. More...
 
virtual bool empty () const
 L'ensemble est-il vide ?
 
iSet iBegin () const
 Retourne un identificateur de début pour le parcours de l'ensemble. More...
 
iSet iEnd () const
 Retourne un identificateur de fin pour le parcours de l'ensemble. More...
 
void iNext (iSet &i) const
 Incrémente l'identificateur passé pour le parcours de l'ensemble. More...
 
const_iterator begin () const
 Retourne un itérateur de début pour le parcours de l'ensemble. More...
 
iterator begin ()
 Retourne un itérateur de début pour le parcours de l'ensemble. More...
 
const_iterator end () const
 Retourne un itérateur de fin pour le parcours de l'ensemble. More...
 
SetContent & operator[] (iSet i)
 Opérateur d'accès. More...
 
SetContent const & operator[] (iSet i) const
 Opérateur d'accès. More...
 

Protected Attributes

std::vector< SetContent > m_content
 Contenu.
 

Additional Inherited Members

- Public Types inherited from cogitant::Set< SetContent >
typedef SetIterator< SetContent, SetContent & > iterator
 Itérateur de parcours permettant la modification de l'ensemble. More...
 
typedef SetIterator< SetContent, SetContent const & > const_iterator
 Itérateur de parcours ne permettant pas la modification de l'ensemble. More...
 
- Protected Member Functions inherited from cogitant::Set< SetContent >
virtual bool isValidIterator (iSet i1) const
 Vérification de la validité d'un itérateur. More...
 

Detailed Description

template<class SetContent>
class cogitant::Set_Simple< SetContent >

Implantation au plus simple d'un ensemble.

Le contenu de l'ensemble est représenté par un std::vector de SetContent indexé par les itérateurs.

See also
Containers classes.

Constructor & Destructor Documentation

◆ Set_Simple() [1/2]

template<class SetContent>
cogitant::Set_Simple< SetContent >::Set_Simple ( )

Constructeur d'un ensemble vide.

◆ Set_Simple() [2/2]

template<class SetContent>
cogitant::Set_Simple< SetContent >::Set_Simple ( Set< SetContent > const &  c)

Constructeur par recopie.

◆ ~Set_Simple()

template<class SetContent>
virtual cogitant::Set_Simple< SetContent >::~Set_Simple ( )
virtual

Destructeur.

Member Function Documentation

◆ clear()

template<class SetContent>
void cogitant::Set_Simple< SetContent >::clear ( )
virtual

Vider.

Implements cogitant::Set< SetContent >.

◆ iAdd()

template<class SetContent>
iSet cogitant::Set_Simple< SetContent >::iAdd ( SetContent const &  c)
virtual

Ajout d'un élément à l'ensemble.

Exceptions
ExceptionAlreadyPresent

Implements cogitant::Set< SetContent >.

◆ iDelete()

template<class SetContent>
void cogitant::Set_Simple< SetContent >::iDelete ( iSet  i)
virtual

Suppression d'un élément à l'ensemble.

Après suppression l'identificateur repère l'élément qui suit celui qui a été supprimé. Tous les autres identificateurs et itérateurs repérant un élément situé après celui qui a été supprimé deviennent incohérents.

Exceptions
ExceptionISetOutOfBounds

Implements cogitant::Set< SetContent >.

◆ iFind()

template<class SetContent>
iSet cogitant::Set_Simple< SetContent >::iFind ( SetContent const &  c) const
virtual

Recherche d'un élément dans l'ensemble.

Parameters
célément recherché (l'opérateur == doit être défini sur SetContent).
Returns
un identificateur repérant l'occurence de c dans l'ensemble ou end() si c est introuvable.

Reimplemented from cogitant::Set< SetContent >.

◆ iGetContent() [1/2]

template<class SetContent>
SetContent const& cogitant::Set_Simple< SetContent >::iGetContent ( iSet  i) const
virtual

Accès à un élément de l'ensemble.

Parameters
iun identificateur sur l'ensemble.
Returns
l'élément de l'ensemble correspondant à l'identificateur i.
Exceptions
ExceptionISetOutOfBounds

Implements cogitant::Set< SetContent >.

◆ iGetContent() [2/2]

template<class SetContent>
SetContent& cogitant::Set_Simple< SetContent >::iGetContent ( iSet  i)
virtual

Accès à un élément de l'ensemble.

Parameters
iun identificateur sur l'ensemble.
Returns
l'élément de l'ensemble correspondant à l'identificateur i.
Exceptions
ExceptionISetOutOfBounds

Implements cogitant::Set< SetContent >.

◆ iReplace()

template<class SetContent>
void cogitant::Set_Simple< SetContent >::iReplace ( iSet  i,
SetContent const &  v 
)
virtual

Remplace la valeur d'un élément par une autre valeur.

Parameters
iidentificateur de l'élément dont la valeur doit être remplacée.
vnouvelle valeur.

Reimplemented from cogitant::Set< SetContent >.

◆ maxSize()

template<class SetContent>
nSet cogitant::Set_Simple< SetContent >::maxSize ( ) const
virtual

Taille maximale de l'ensemble.

Returns
0 si la structure de données n'a pas de taille maximale.

Implements cogitant::Set< SetContent >.

◆ reserve()

template<class SetContent>
void cogitant::Set_Simple< SetContent >::reserve ( nSet  size)
virtual

Réservation d'espace dans l'ensemble.

Dans le cas où l'ensemble est représenté par un vector, il peut être très intéressant pour des raisons de performances de dimensionner le vector au nombre maximum d'éléments pouvant être contenus dans l'ensemble. L'appel à cette méthode n'est donc pas obligatoire (le Set doit toujours se redimensionner automatiquement) mais peut provoquer un gain de performances selon l'implémentation de la structure de données.

Implements cogitant::Set< SetContent >.

◆ size()

template<class SetContent>
nSet cogitant::Set_Simple< SetContent >::size ( ) const
virtual

Taille actuelle de l'ensemble.

Implements cogitant::Set< SetContent >.