jeudi 16 décembre 2010

C++0x - Moins de Boost, plus de Standard

Je me suis livré à un petit nettoyage de mes en-têtes précompilées, en enlevant les en-têtes Boost pour lesquelles j'avais un remplacement en C++0x.

Peu de gain, au final, puisque j'économise environ 12Mo sur des précompilations faisant entre 120 et 300Mo, mais c'est toujours ça de pris, sans compter un code plus cohérent. Voici les remplacements:

  • <boost/shared_ptr.hpp> est remplacé par <memory> et son std::shared_ptr

  • <boost/scoped_ptr.hpp> et <boost/scoped_array.hpp> sont remplacés par l'excellent std::unique_ptr

  • <boost/static_assert.hpp> est remplacé par static_assert

  • <boost/optional.hpp> vire à cause des soucis d'aliasing

  • <boost/enable_shared_from_this.hpp> est fourni par std::shared_from_this

  • <boost/thread.hpp> est remplacé par <thread>. Attention cependant, pas encore de groupes de threads dans le standard!

  • <boost/non_copyable.hpp> est remplacé par les suppressions de méthodes (mot-clé delete)

Aucun commentaire: