5 Eylül 2016 Pazartesi

new_handler

Giriş
new_handler function pointer olarak tanımlıdır ve şöyledir.
typedef void (*new_handler)();
Bellek ayırırken hata olursa çağrılır. Kod şuna benzer
// The allocation was unsuccessful; find out what the
// current new-handling function is 
new_handler globalHandler = set_new_handler(0);
set_new_handler(globalHandler);
if (globalHandler)
  (*globalHandler)();
else
  throw std::bad_alloc();
C++11
new_handler'ı almak için şöyle yaparız.
new_handler globalHandler = get_new_handler();
C++98
new_handler'ı almak için şöyle yaparız.
new_handler globalHandler = set_new_handler(0);
set_new_handler (globalHandler);

Hiç yorum yok:

Yorum Gönder