void* operator new(size_t vel) throw(std::bad_alloc)
{
    void * vysledek = 0;
    while(true)
    {
        vysledek = malloc(vel ? vel: 1); // Alokujeme alespoò 1 bajt
        new_handler nh = 0; // Ukazatel na obsluhu
        if(vysledek) return vysledek; // Když se povedlo
        if((nh = set_new_handler(0)) != 0)
        { // Když je nastavena obsluha,
            nh(); // tak ji zavolej
            set_new_handler(nh); // a nastav ji znovu,
        }
        else throw bad_alloc(); // jinak vyvolej výjimku
    }
}
