Aracılığıyla paylaş


bad_alloc Sınıfı

sınıfı, ayırma isteğinin başarılı olmadığını belirtmek için oluşan bir özel durumu açıklar.

Sözdizimi

class bad_alloc : public exception {
    bad_alloc();
    virtual ~bad_alloc();
    bad_alloc(const bad_alloc&);
    bad_alloc& operator=(const bad_alloc&);
    const char* what() const override;
};

Açıklamalar

tarafından what döndürülen değer, uygulama tanımlı bir C dizesidir. Üye işlevlerin hiçbiri özel durum oluşturmaz.

Örnek

// bad_alloc.cpp
// compile with: /EHsc
#include <new>
#include <iostream>
using namespace std;

int main() {
   char* ptr;
   try {
      ptr = new char[(~unsigned int((int)0)/2) - 1];
      delete[] ptr;
   }
   catch( bad_alloc &ba) {
      cout << ba.what( ) << endl;
   }
}
bad allocation