Tentative d'ajout d'une information déjà présente dans un objet. More...
#include "cogitant/exception.h"
Public Member Functions | |
ExceptionAlreadyPresent (unsigned int code=0, std::string const &message="") | |
Constructeur d'une exception. More... | |
Public Member Functions inherited from cogitant::Exception | |
virtual std::string | toString () const |
Message d'erreur "en clair". More... | |
const char * | what () const throw () |
Accès au message d'erreur selon la méthode standard de la bibliothèque C++. More... | |
std::string const & | message () const |
Accesseur au message d'erreur. More... | |
unsigned int | code () const |
Sous code d'erreur. More... | |
std::string | className () const |
Nom de la classe. More... | |
Exception (unsigned int code=0, std::string const &message="") | |
Constructeur d'une exception. More... | |
virtual | ~Exception () throw () |
Destructeur. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from cogitant::Exception | |
std::string | messageAsIdToString () const |
Convertit le message de l'exception en entête de string (pour toString()) en considérant le message comme un iSet. More... | |
Tentative d'ajout d'une information déjà présente dans un objet.
Changer l'intitulé d'un type de concept en une chaîne égale, par exemple, ne provoque aucune erreur ou exception. Par contre rajouter à un ordre partiel qui contient déjà l'information que a est immédiatement inférieur à b cette même information peut être considéré comme une erreur car, vu l'implantation de la structure de données, il est nécessaire de vérifier qu'une même information n'est pas rajoutée plusieurs fois. Si les exceptions sont activées, il est donc cohérent de prévenir le développeur de cette erreur. Cette exception est levée dans les cas suivants :
cogitant::ExceptionAlreadyPresent::ExceptionAlreadyPresent | ( | unsigned int | code = 0 , |
std::string const & | message = "" |
||
) |
Constructeur d'une exception.