new File Reference

Go to the source code of this file.

## Classes

class | std::bad_alloc

## Namespaces

| std

## Typedefs

typedef void(* | std::new_handler) ()

## Functions

new_handler | std::get_new_handler () noexcept
new_handler | std::set_new_handler (new_handler) throw ()
void * | operator new (std::size_t) __attribute__((__externally_visible__))
void * | operator new[] (std::size_t) __attribute__((__externally_visible__))
void | operator delete (void *) noexcept __attribute__((__externally_visible__))
void | operator delete[] (void *) noexcept __attribute__((__externally_visible__))
void * | operator new (std::size_t, const std::nothrow_t &) noexcept __attribute__((__externally_visible__))
void * | operator new[] (std::size_t, const std::nothrow_t &) noexcept __attribute__((__externally_visible__))
void | operator delete (void *, const std::nothrow_t &) noexcept __attribute__((__externally_visible__))
void | operator delete[] (void *, const std::nothrow_t &) noexcept __attribute__((__externally_visible__))
void * | operator new (std::size_t, void *__p) noexcept
void * | operator new[] (std::size_t, void *__p) noexcept
void | operator delete (void *, void *) noexcept
void | operator delete[] (void *, void *) noexcept

## Variables

const nothrow_t | std::nothrow

## Detailed Description

This is a Standard C++ Library header.

The header `new` defines several functions to manage dynamic memory and handling memory allocation errors; see http://gcc.gnu.org/onlinedocs/libstdc++/18_support/howto.html#4 for more.

Definition in file new.

## Function Documentation

## operator delete() [1/3]

void operator delete | ( | void * |  | ) |

noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

## operator delete() [2/3]

void operator delete | ( | void * | ,
|  | const std::nothrow_t & |
| ) |  |

noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

## operator delete() [3/3]

void operator delete | ( | void * | ,
|  | void * |
| ) |  |

inline noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

Definition at line 174 of file new.

## operator delete[]() [1/3]

void operator delete[] | ( | void * |  | ) |

noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

## operator delete[]() [2/3]

void operator delete[] | ( | void * | ,
|  | const std::nothrow_t & |
| ) |  |

noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

## operator delete[]() [3/3]

void operator delete[] | ( | void * | ,
|  | void * |
| ) |  |

inline noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

Definition at line 175 of file new.

## operator new() [1/3]

void* operator new | ( | std::size_t |  | ) |

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

## operator new() [2/3]

void* operator new | ( | std::size_t | ,
|  | const std::nothrow_t & |
| ) |  |

noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

## operator new() [3/3]

void* operator new | ( | std::size_t | ,
|  | void * | __p
| ) |  |

inline noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

Definition at line 168 of file new.

## operator new[]() [1/3]

void* operator new[] | ( | std::size_t |  | ) |

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

## operator new[]() [2/3]

void* operator new[] | ( | std::size_t | ,
|  | const std::nothrow_t & |
| ) |  |

noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

## operator new[]() [3/3]

void* operator new[] | ( | std::size_t | ,
|  | void * | __p
| ) |  |

inline noexcept

These are replaceable signatures:

- normal single new and delete (no arguments, throw `bad_alloc` on error)
- normal array new and delete (same)
- `nothrow` single new and delete (take a `nothrow` argument, return `NULL` on error)
- `nothrow` array new and delete (same)

Placement new and delete signatures (take a memory address argument, does nothing) may not be replaced by a user's program.

Definition at line 170 of file new.