Bonjour à tous, depuis le début de l'après midi je suis à la recherche de fuite de mémoire sur mon programme. Et après bcp de recherche j'en suis venu à la conclusion que c'est l'orienté objet qui provoque cette fuite.
Je vous ai donc prévu un petit code source minimal présentant le programme :
#include <SFML/Graphics.hpp>
class Application{
sf::RenderWindow m_window;
//Screen::MapEditor *mapEditor;
public:
Application() : m_window(sf::VideoMode(800,600), "sfml"){
m_window.setFramerateLimit(60);
//mapEditor = new Screen::MapEditor(m_window);
//m_screenManager->pushScreen(mapEditor);
}
~Application(){
}
void run(){
sf::Clock clock;
sf::Time timeSinceLastUpdate = sf::Time::Zero;
while(m_window.isOpen()){
processEvents();
update();
render();
}
}
void processEvents(){
sf::Event event;
while(m_window.pollEvent(event)){
//m_screenManager->handleEvents(event);
switch(event.type){
case sf::Event::Closed :
m_window.close();
break;
}
}
}
void update(){
}
void render(){
m_window.clear();
//m_screenManager->draw();
m_window.display();
}
};
int main()
{
Application app;
app.run();
}
Quand on lance ce programme et que l'on observe ses ressources dans le gestionnaire des taches Windows on observe une augmentation entre 4 et 8 octets par seconde (C'est une approximation).
Je vous demande à présent si je fais quelque chose de mal ou bien si la sfml a une petite mise à jour à faire.
Cordialement