bonjour,
Je suis occupé de créer une class couleur.
Dedans je dois créer un setter gris dont le nom doit correspondre au degré de gris. ex. setGris(20) le nom doit être "gris 20"
Code CPP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 int Couleur::setNom(const char*); // prototype de setNom //SETTER gris int Couleur::setGris(int val) { if(0 <= val && val <= 255){ r = v = b = val; setNom(); return 1; } return 0; }
Ce que j'essayes donc de faire: est passer directement en paramètre les éléments sans passer par des intermédiaires du style new.
J'essayes donc de faire quelque chose du style de ceci => setNom("gris" + val);
2 problèmes avec cela
- setNom attends en paramètre un const char* et non un string (string n'étant pas autorisé scolairement parlent)
- je codes sur Solaris 11 donc la version C++ est C++98
Je pourrais le résoudre de cette manière
Mais j'essayes d'apprendre comment passe le tout directement en paramètre
Code CPP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 int Couleur::setGris(int val) { if(0 <= val && val <= 255){ char* tmpNom = new char[9]; // gris + espace + 255 + \0 r = v = b = val; sprintf(tmpNom, "Gris %d", val); setNom(tmpNom); delete tmpNom; return 1; } return 0; }
Merci d'avance pour votre aide
Partager