Problème de passage de paramètres au constructeur de la classe mère
Bonjour,
Je dispose de 2 classes :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| class A{
private :
std::string nom;
int valeur;
public :
A(std::string,int);
};
class B : public A{
protected :
static int numero;
public :
B(std::string nom,int valeur);
B(int);
}; |
Tout va bien pour le premier constructeur de B, lorsque j'utilise :
Code:
B::B(std::string nom, int valeur) : A(nom,valeur){...}
Par contre, je ne vois pas du tout comment faire pour utiliser le second constructeur. En fait, je voudrais qu'un nom par défaut (mais différent à chaque fois) soit attribué, en utilisant la variable static numero.
En gros, je voudrais passer en argument une string de valeur : "Objet_"+numero
Le problème qui se pose est que C++ ne fait pas un transtypage automatique de int vers string et je n'arrive pas à voir comment je pourrais faire.
Je sais que je pourrais utiliser stringstream, mais impossible pour un passage de paramètre direct au constructeur de la classe mère.
Quelqu'un aurait-il une solution à me proposer ?
Merci.
PS : En Java, la manipulation serait plus facile en faisant :
Code:
1 2 3 4
| public B(int valeur){
super("Objet_"+numero,valeur);
numero++;
} |