constructeur de conversion
Bonjour à tous, je dispose de 2 Classes :
une classe d'int qui permet de gérer un ensemble d'int(ajouter, rechercher, afficher l'ens)
une classe de char qui permet de gerer ds chaines(créer des chaines de plusiurs manières..). Voici les déclarations des classes:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| #ifndef CCAHINE_H
#define CCHAINE_H
class CChaine
{
public:
CChaine(void);//constructeur par defaut
CChaine(const char *psChaine);//constructeur avec 1 paramètres
CChaine(const CChaine&);//constructeur par copie
// fonction pour connaitre la taille de la chaine
int GetSize(void) const
{
return (m_dLong);
}
void Afficher(void) const;//fonction d'affichage de la chiane de caractères
~CChaine(void);//destructeur de la classe
private:
// longueur de la chaine de caractere
size_t m_dLong;
//pointeur de la chaine de caractère
char *m_psTab;
public:
// operateur pour convertir une chaine en 1 int
operator int(void) const
{
return(m_dLong);
}
};
#endif |
et
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| #ifndef CSETINT_H
#define CSETINT_H
#include <string>
#include"CChaine.h"
class CChaine;
class CSetInt
{
public:
CSetInt();// constructeur par défaut (inutilisé)
CSetInt(size_t dSize);// constructeur réellement utilisé
~CSetInt(); //destructeur
CSetInt(const CSetInt&);//constructeur par copie
const std::string& error() const;// pour savoir ce qui a pu foirer
bool addInteger();// pour ajouter un entier
size_t maxSize() const;// pour connaitre le nombre maximal d'entier attendu
size_t count() const;// pour connaitre le nombre d'eniters déjà introduits:cardinal
void affiche() const;// pour afficher les entiers introduits
bool existe(int dSearch) const;// pour savoir si un entier se trouve deja dans letableau
//rajout
CCetInt(const CChaine&);//constrcucteur de conversion
operator CChaine();//opérateur pour convertir 1 int en Chaine
/*size_t corresponds to the integral data type returned by the language operator sizeof */
protected:
private:
int * m_pdTab;
size_t m_dCurPos;
size_t m_dSize;
std::string m_error;
};
#endif // CSETINT_H |
j'aimerai rajouter des fonctions de conversion, des opérateurs, et aimerai des idées de conversion interressante que je pourrai faire. Merci
CoolD