Forum de la communauté SFML

Général => Suggestions de nouvelles fonctionnalités => Discussion démarrée par: nico69 le Septembre 08, 2016, 11:47:11 pm

Titre: Rendre mouvable les types non copiable
Posté par: nico69 le Septembre 08, 2016, 11:47:11 pm
Bonjour,
Certains types de la sfml ne sont ni copiable, ni mouvable (comme sf::RenderTexture ou sf::Music).
Il est donc impossible de les placer dans une liste.
Il me faut donc passer par un unique_ptr pour palier ce probleme, et je ne trouve pas ça top.

std::vector<sf::Music> musics;
musics.push_back(sf::Music()); //error use of deleted function 'sf::Music::Music(const sf::Music&)

std::vector<std::unique_ptr<sf::Music>> m;
m.push_back(std::make_unique<sf::Music>()); //it's ok
 

Est il possible de rendre ces type non copiable mouvable ?
Ça faciliterais grandement leur gestion dans les listes.

Merci
Titre: Re : Rendre mouvable les types non copiable
Posté par: Laurent le Septembre 09, 2016, 07:39:38 am
Ce sera bien entendu fait quand SFML passera au C++11 (voir discussions sur forum et github à ce sujet).