Bonjour à tous, je suis en train de réorganiser mon code et pour garder les boutons de mes menus en mémoire, j'ai choisi de créer une map. Quand je compile mon code il essaye d'utiliser le constructeur par défaut de ma class bouton, je ne sais pas si l'erreur vient de ma conception ou s'il faut bel et bien "préciser" le constructeur à utilisé ? enfin bref je suis un peu perdu...
Quelqu'un a une solution ?
Code de la déclaration :
Code qui remplie la map d'un bouton :
Code : Sélectionner tout - Visualiser dans une fenêtre à part std::map<std::string, Button> menu;
Class du bouton :
Code : Sélectionner tout - Visualiser dans une fenêtre à part menu["play"] = Button(sf::Vector2f( 0, 0 ), sf::Vector2f( 700, 400 ), s);
Erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 #ifndef Button_included #define Button_included #include <SFML/Graphics.hpp> class Button : public sf::Drawable, public sf::Transformable /// inlining ! { public: Button( sf::Vector2f const &position, sf::Vector2f const &size, std::string const &text ); Button( sf::Vector2f const &position, sf::Vector2f const &size, sf::Sprite const &sprite );// à créer en interne bool isTouch( sf::Vector2f const &mousePosition ) const; private: sf::Vector2f button_position; sf::Vector2f button_size; sf::Sprite button_sprite; std::string button_text; virtual void draw( sf::RenderTarget& target, sf::RenderStates states ) const; /// s'occuper de la version textuelle }; #endif // Button_included
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part no matching function for call to 'Button::Button()'|
Partager