_set_new_mode
设置 malloc的新处理程序模式。
int _set_new_mode(
int newhandlermode
);
参数
- newhandlermode
malloc的新处理程序模式;有效值为 0 或 1。
返回值
返回为 malloc设置以前的处理程序模式。 返回值 1 表示,在未分配内存, malloc 以前称为新的处理程序实例;返回值 0 指示不。 如果 newhandlermode 参数不等于 0 或 1,则返回 – 1。
备注
C++ _set_new_mode 功能集 malloc的新处理程序模式。 新的处理程序模式指示,在失败时, malloc 是否调用新的处理程序实例由设置由 _set_new_handler。 默认情况下, malloc 不调用在发生故障的新处理程序实例分配内存。 可以重写此默认行为,以便,那么,当 malloc 不能分配内存时, malloc 类似的方式调用新的处理程序实例 new 运算符,则它的原因相同失败。 有关更多信息,请参见 C++ 语言的新 和 删除 运算符 引用。 若要重写默认值,请调用:
_set_new_mode(1)
早期程序或指向与 Newmode.obj (请参见 LINK选项)。
此功能验证其参数。 除了 0 或 1,如果 newhandlermode 是,任何函数调用的参数无效处理程序,如 参数验证所述。 如果执行允许继续, **_**set_new_mode 返回 -1 并将 errno 到 EINVAL。
要求
实例 |
必需的头 |
---|---|
_set_new_mode |
new.h |
有关更多兼容性信息,请参见中介绍的 兼容性 。
.NET Framework 等效项
不适用。若要调用标准 C 函数,请使用 PInvoke。有关更多信息,请参见 平台调用示例。