C++ 新库 - nothrow



描述

这是一个nothrow常量,此常量值用作operator new和operator new[]的参数,以指示这些函数在失败时不应抛出异常,而是返回空指针。

以下是std::nothrow的声明。

		
extern const nothrow_t nothrow;

参数

返回值

异常

**不抛出异常保证** - 此成员函数从不抛出异常。

数据竞争

示例

以下是如何使用std::nothrow的示例。

#include <iostream>
#include <new>

int main () {
   std::cout << "Attempting to allocate...";
   char* p = new (std::nothrow) char [1024*1024];
   if (p==0) std::cout << "Failed!\n";
   else {
      std::cout << "Succeeded!\n";
      delete[] p;
   }
   return 0;
}

输出应如下所示:

Attempting to allocate...Succeeded!
new.htm
广告