_set_new_mode
için malloc
bir new
işleyici modu ayarlar.
Sözdizimi
int _set_new_mode( int newhandlermode );
Parametreler
newhandlermode
new
için malloc
işleyici modu; geçerli değer 0 veya 1'dir.
Dönüş değeri
için malloc
ayarlanan önceki işleyici modunu döndürür. 1 dönüş değeri, bellek malloc
ayrılamaması durumunda daha önce işleyici yordamı olarak adlandırılan new
0 dönüş değerinin ayrılmadığını gösterdiğini gösterir. newhandlermode
Bağımsız değişken 0 veya 1'e eşit değilse, -1 döndürür.
Açıklamalar
C++ _set_new_mode
işlevi için malloc
işleyici modunu ayarlarnew
. İşleyici new
modu, hata malloc
durumunda tarafından _set_new_handler
ayarlandığı gibi işleyici yordamının new
çağrılıp çağrılmayacağını belirtir. Varsayılan olarak, malloc
bellek ayırma hatasında new
işleyici yordamını çağırmaz. Bu varsayılan davranışı geçersiz kılabilir, böylece bellek ayrılamazsamalloc
, işleç aynı nedenden dolayı başarısız olduğunda olduğu gibi new
işleyici yordamını çağırırnew
. malloc
Daha fazla bilgi için C++ Dil Başvurusu'ndaki ve delete
işleçlerine bakınnew
. Varsayılanı geçersiz kılmak için şunu çağırın:
_set_new_mode(1);
programınızın başlarında veya Newmode.obj ile bağlantı oluşturun (bkz . Bağlantı seçenekleri).
Bu işlev parametresini doğrular. 0 veya 1 dışında bir şeysenewhandlermode
, işlev Parametre doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisini çağırır. Yürütmenin devam etmesi için izin verilirse, _set_new_mode -1 döndürür ve olarak EINVAL
ayarlanırerrno
.
Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.
Gereksinimler
Yordam | Gerekli başlık |
---|---|
_set_new_mode |
<new.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Ayrıca bkz.
Bellek ayırma
calloc
free
realloc
_query_new_handler
_query_new_mode
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin