Odpověď na názor

Odpovídáte na názor ke článku Alokátory a operator new v C++.

  • 6. 1. 2012 14:14

    Ondřej Novák (neregistrovaný)

    @1 Zdravím. Ve skutečnosti nemám nikde singletony, tedy pouze jen objekty, které mohou býti singletony, nebo jsou na to vhodné. To getInstance() je funkce, která přes mnou napsaný systém alokace singletonů prostě vytvoří a následně zaregistruje globální instanci objektu, která je pak dostupná přes stejné volání (samozřejmě je to MT safe). Nicméně instancí téže třídy lze vytvořit více, není tam to omezení jako u pravých singletonů.

    Alokátory v STL jsou fakt zmršené, právě že si nedrží instanci, musí to člověk obcházet třeba přes globální proměnné, nebo lépe přes thread proměnné. Já mám ještě v plánu kromě druhého dílu k tomuto článku pak povídání o továrnách (obecných), které se hodí třeba na alokaci uzlů ve stromě, nebo ve spojových seznamech, a dále tam mám třídu představující alokovaný blok, což se zase hodi pro všelijaké vektory, a obecně kontejnery pracující se souvislým úsekem paměti s možností jeho relokace.

    Proto jsem se dostal tak daleko, že ve svých knihovnách mám i vlastní implementace vektorů, vyhledávacích stromů, listů, front, zásobníků, a tak dále, jenom proto, že v nich mohu používat své alokátory :-)