销毁所含对象(如果存在),如同调用 reset() 一样。
reset()
#include <any> #include <cstdio> struct X { X() { std::puts("X::X()"); } X(const X&) { std::puts("X::X(const X&)"); } ~X() { std::puts("X::~X()"); } }; int main() { std::any a{X{}}; std::puts("Leaving main()..."); }
输出
X::X() X::X(const X&) X::~X() Leaving main()... X::~X()