Fehlermeldung die ich nicht verstehe
-
Hallo arbeite gerade mit der SFML, denke aber es ist ein Fehler in c++. Ich habe die Zeile kommentiert die nicht funktioniert.
//Visualization.h class Visualization : public Base, public sf::Drawable { private: static std::vector<sf::Image> Images; protected: void Render(sf::RenderTarget& Target) const; public: sf::Sprite Sprite; Visualization(); }; //Visualization.cpp void Visualization::Render(sf::RenderTarget& Target) const { sf::Image newImage; sf::Sprite Test(Sprite); newImage.LoadFromFile("Test.bmp"); Test.SetImage(newImage); Sprite.SetImage(newImage); //Geht nicht, wieso? Target.Draw(Sprite); }IntelliSense: the object has type qualifiers that are not compatible with the member function ...\visualization.cpp 16
error C2662: 'sf::Sprite::SetImage' : cannot convert 'this' pointer from 'const sf::Sprite' to 'sf::Sprite &' ...\visualization.cpp 16
Ich verstehe nicht wieso es mit "Test" geht, aber mit "Sprite" nicht...
-
Render ist const aber setImage ändert offensichtlich den Sprite welcher ein Member deiner Klasse ist. NewImage ist eine lokale Variable und kann damit verändert werden.
-
Hatte Tomaten auf den Augen...
Klar, verstanden danke.