problème avec les constructeurs
Bonjour,
Je commence sur un nouveau post-doc, je dois travailler sur un code déja existant programé initialement e C++. Seulement mes connaissances sont trés limités en C++
Est ce que queqlqu'un peut me dérouler ce petit programe et notament l'instruction Chameleon() {};. Merci d'avance:
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
| #ifndef CHAMELEON_H__
#define CHAMELEON_H__
#include <string>
class Chameleon {
public:
Chameleon() {};
explicit Chameleon(const std::string&);
explicit Chameleon(double);
explicit Chameleon(const char*);
Chameleon(const Chameleon&);
Chameleon& operator=(Chameleon const&);
Chameleon& operator=(double);
Chameleon& operator=(std::string const&);
public:
operator std::string() const;
operator double () const;
operator int () const;
operator bool () const;
private:
std::string value_;
};
#endif |
Problème avec les constructeurs
Je pense avoir compris, est ce que qlqun peut me confirmer ça ?
la ligne de commande Chameleon() {}; n'est rien d'autre qu'un constructeur par défaut qui ne prend absolument rien
pour les autres constructeurs
Code:
1 2 3
| explicit Chameleon(const std::string&);
explicit Chameleon(double);
explicit Chameleon(const char*); |
explicit interdit juste le transtypage de manière implicite (ce qui est prédéfinit dans le complilateur) mais je ne comprend pas a quoi sert le symbole & dans (const std::string&) ni l'étoile dans (const char*)pour le reste je ne sais toujours pas. j'ai besoin de votre d'aide