| (since C++11) | |||
| (since C++11) |
Returns the deleter object which would be used for destruction of the managed object.
Parameters
(none).
Return value
The stored deleter object.
Exceptions
noexcept
specification: noexcept
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | #include <iostream> #include <memory> struct Foo { Foo() { std::cout << "Foo...\n" ; } ~Foo() { std::cout << "~Foo...\n" ; } }; struct D { void bar() { std::cout << "Call deleter D::bar()...\n" ; } void operator()(Foo* p) const { std::cout << "Call delete for Foo object...\n" ; delete p; } }; int main() { std::unique_ptr<Foo, D> up( new Foo(), D()); D& del = up.get_deleter(); del.bar(); } |
Output:
1 2 3 4 | Foo... Call deleter D::bar()... Call delete for Foo object... ~Foo... |
Please login to continue.