Standard library header <new> - cppreference.com

##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# Standard library header <new>

From cppreference.com
< cpp‎ | header

This header is part of the dynamic memory management library, in particular provides low level memory management features.

##### Functions
operator newoperator new[] | allocation functions (function) [edit]
operator deleteoperator delete[] | deallocation functions (function) [edit]
get_new_handler (C++11) | obtains the current new handler (function) [edit]
set_new_handler | registers a new handler (function) [edit]
##### Classes
bad_alloc | exception thrown when memory allocation fails (class) [edit]
bad_array_new_length (C++11) | exception thrown on allocation of array with invalid length (class) [edit]
nothrow_t | tag type used to select an non-throwing allocation function (class) [edit]
##### Types
new_handler | function pointer type of the new handler (typedef) [edit]
##### Objects
nothrow | an object of type `nothrow_t` used to select an non-throwing allocation function (constant) [edit]

### [edit] Synopsis

    namespace std {
        class bad_alloc;
        class bad_array_new_length;
        struct nothrow_t {};
        extern const nothrow_t nothrow;
        typedef void (*new_handler)();
        new_handler get_new_handler() noexcept;
        new_handler set_new_handler(new_handler new_p) noexcept;
    }

    void* operator new(std::size_t size);
    void* operator new(std::size_t size, const std::nothrow_t&) noexcept;
    void  operator delete(void* ptr) noexcept;
    void  operator delete(void* ptr, const std::nothrow_t&) noexcept;
    void* operator new[](std::size_t size);
    void* operator new[](std::size_t size, const std::nothrow_t&) noexcept;
    void  operator delete[](void* ptr) noexcept;
    void  operator delete([]void* ptr, 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;

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/header/new&oldid=57512"