Espacios de nombres
Variantes

Archivo de encabezado de la biblioteca estándar <new>

De cppreference.com
 
 
Archivos de encabezado de la biblioteca estándar
 

Este archivo de encabezado es parte de la biblioteca de gestión de memoria dinámica, en particular, proporciona características de gestión de memoria de bajo nivel.

Funciones
Funciones de asignación.
(función) [editar]
Funciones de desasignación.
(función) [editar]
Obtiene el nuevo controlador actual.
(función) [editar]
Registra un controlador nuevo.
(función) [editar]
(C++17)
Barrera de optimización de puntero.
(plantilla de función) [editar]
Clases
Excepción que se produce cuando la asignación de memoria falla.
(clase) [editar]
Excepción que se produce en la asignación de un array con una longitud inválida.
(clase) [editar]
Etiqueta de tipo utilizada para seleccionar una función de asignación que no lanza excepciones.
(clase) [editar]
Tipo utilizado para pasar alineamiento a funciones de asignación y desasignación con funcionalidad de alineamiento.
(clase) [editar]
Tipo de etiqueta utilizado para identificar sobrecargas de delete de destrucción del operador delete.
(clase) [editar]
Tipos
Tipo de puntero a función del nuevo controlador.
(typedef) [editar]
Objetos
Un objeto de tipo nothrow_t utilizado para seleccionar una función de asignación que no lanza excepciones.
(constante) [editar]
Desplazamiento mínimo para evitar compartimiento falso (false sharing).
Desplazamiento máximo para promover compartimiento verdadero (true sharing).
(constante) [editar]

Sinopsis

namespace std {
  class bad_alloc;
  class bad_array_new_length;
  struct destroying_delete_t {
    explicit destroying_delete_t() = default;
  };
  inline constexpr destroying_delete_t destroying_delete{};
  enum class align_val_t : size_t {};
  struct nothrow_t { explicit nothrow_t() = default; };
  extern const nothrow_t nothrow;
  using new_handler = void (*)();
  new_handler get_new_handler() noexcept;
  new_handler set_new_handler(new_handler new_p) noexcept;
  template <class T> constexpr T* launder(T* p) noexcept;
  inline constexpr size_t
    hardware_destructive_interference_size = /*definido por la implementación*/ ;
  inline constexpr size_t
    hardware_constructive_interference_size = /*definido por la implementación*/ ;
}

void* operator new(std::size_t size);
void* operator new(std::size_t size, std::align_val_t alignment);
void* operator new(std::size_t size, const std::nothrow_t&) noexcept;
void* operator new(std::size_t size, std::align_val_t alignment,
                   const std::nothrow_t&) noexcept;
void operator delete(void* ptr) noexcept;
void operator delete(void* ptr, std::size_t size) noexcept;
void operator delete(void* ptr, std::align_val_t alignment) noexcept;
void operator delete(void* ptr, std::size_t size, std::align_val_t alignment) noexcept;
void operator delete(void* ptr, const std::nothrow_t&) noexcept;
void operator delete(void* ptr, std::align_val_t alignment,
                     const std::nothrow_t&) noexcept;
void* operator new[](std::size_t size);
void* operator new[](std::size_t size, std::align_val_t alignment);
void* operator new[](std::size_t size, const std::nothrow_t&) noexcept;
void* operator new[](std::size_t size,
                     std::align_val_t alignment,
                     const std::nothrow_t&) noexcept;
void operator delete[](void* ptr) noexcept;
void operator delete[](void* ptr, std::size_t size) noexcept;
void operator delete[](void* ptr, std::align_val_t alignment) noexcept;
void operator delete[](void* ptr, std::size_t size, std::align_val_t alignment) noexcept;
void operator delete[](void* ptr, const std::nothrow_t&) noexcept;
void operator delete[](void* ptr, std::align_val_t alignment,
                       const std::nothrow_t&) noexcept;
void* operator new (std::size_t size, void* ptr) noexcept;
void* operator new[](std::size_t size, void* ptr) noexcept;
void operator delete (void* ptr, void*) noexcept;
void operator delete[](void* ptr, void*) noexcept;