J'ai récemment commencé à utiliser SFML et j'ai remarqué qu'il n'y avait pas de méthodes de type «FreeResource». Par exemple, sf::Font
a une fonction appelée LoadFromFile
, mais aucune fonction pour libérer la ressource. Je pensais que c'était très étrange. Est-ce que je manque quelque chose? Est-ce que ma seule option est de créer un pointeur sf::Font
et de l'allouer dynamiquement et de le supprimer?SFML Releasing Resources
3
A
Répondre
6
sf::Font
stocke ses données de police dans un std::map
appelé myGlyphs (voir le source). Quand le destructeur de Font est appelé, tout le contenu de cette carte sera automatiquement libéré (par le destructeur std::map
).
Questions connexes
- 1. Releasing subviews
- 2. CoreData: Releasing ManagedObject
- 3. Releasing object in dealloc
- 4. Releasing objet sur pointeur
- 5. SFML Plasma Sprite Effet?
- 6. SFML Problème de système d'entrée
- 7. Widget Framework Resources
- 8. Delphi Out of resources
- 9. C++ Spin Image Resources
- 10. Silverlight MEF Embedded Resources
- 11. Releasing Excel après avoir utilisé Interop
- 12. connexion Releasing connectionDidFinishLoading causent la mauvaise instruction
- 13. Releasing UIViewControllers et analyse statique LLVM
- 14. SFML SetFramerateLimit ne limite pas Frame Rate
- 15. Comment animer un sprite en SFML
- 16. éditeur de texte en plein écran SFML
- 17. WebRequest and Resources - Timeout ASP.NET
- 18. L'histoire de Linq - Any Resources?
- 19. Rendre Eclipse utiliser src/test/resources au lieu de src/main/resources
- 20. Pourquoi $ Resources: wss fonctionne-t-il dans un contrôle web, mais $ Resources: core ne fonctionne pas?
- 21. Conversion de texte en fichier .resources
- 22. Rebranding Application Resources dans .NET 2.0
- 23. Rails3 routes problème: méthode non définie `resources '
- 24. Expression Maven pour src/main/resources
- 25. Nightmare avec localisation sous Global Resources
- 26. SFML Sprite se déplaçant violemment au 2ème tick
- 27. Comment forcer eclipse à recréer le fichier R (= resources)?
- 28. Maven 2 <resources> héritage (parent -> projet enfant)
- 29. Génération et compilation de fichiers .resources avec MsBuild
- 30. Comment référencer le dossier Resources dans le code
Je ne connais pas SFML. Mais considérons un 'std :: vector'; avez-vous besoin de libérer manuellement ces ressources? Non, c'est fait dans le destructeur. Je soupçonne la même chose pour vous. Notez que l'avoir sur la pile n'est pas différent, sur le plan du comportement, que 'new' et ensuite' delete'. (Sauf que maintenant votre code est moins sûr.) Cela s'appelle RAII. – GManNickG
Parfois, nous avons besoin du même type de ressource dans le même contexte, mais une instance différente. Si j'ai un 'sf :: Texture' qui doit être plus grand, je ne peux pas simplement le redimensionner: je dois le 'supprimer' puis le' créer (...) 'un nouveau. – Litty