std::allocator<T>::destroy 来自cppreference.com < cpp | memory | allocator C++ 语言 标准库头文件 自立与有宿主实现 具名要求 语言支持库 概念库 (C++20) 诊断库 工具库 字符串库 容器库 迭代器库 范围库 (C++20) 算法库 数值库 本地化库 输入/输出库 文件系统库 (C++17) 正则表达式库 (C++11) 原子操作库 (C++11) 线程支持库 (C++11) 技术规范 动态内存管理 智能指针 unique_ptr(C++11) shared_ptr(C++11) weak_ptr(C++11) auto_ptr(C++17 前) owner_less(C++11) enable_shared_from_this(C++11) bad_weak_ptr(C++11) default_delete(C++11) 分配器 allocator allocator_traits(C++11) allocator_arg_t(C++11) allocator_arg(C++11) uses_allocator(C++11) uses_allocator_construction_args(C++20) make_obj_using_allocator(C++20) uninitialized_construct_using_allocator(C++20) scoped_allocator_adaptor(C++11) pmr::polymorphic_allocator(C++17) 内存资源 pmr::memory_resource(C++17) pmr::get_default_resource(C++17) pmr::set_default_resource(C++17) pmr::new_delete_resource(C++17) pmr::null_memory_resource(C++17) pmr::synchronized_pool_resource(C++17) pmr::unsynchronized_pool_resource(C++17) pmr::monotonic_buffer_resource(C++17) pmr::pool_options(C++17) 未初始化存储 raw_storage_iterator(C++20 前) get_temporary_buffer(C++20 前) return_temporary_buffer(C++20 前) 未初始化内存算法 uninitialized_copy uninitialized_fill uninitialized_move(C++17) uninitialized_default_construct(C++17) uninitialized_value_construct(C++17) destroy(C++17) destroy_at(C++17) uninitialized_copy_n(C++11) uninitialized_fill_n uninitialized_move_n(C++17) uninitialized_default_construct_n(C++17) uninitialized_value_construct_n(C++17) destroy_n(C++17) construct_at(C++20) 有制约的未初始化内存算法 ranges::uninitialized_copy(C++20) ranges::uninitialized_fill(C++20) ranges::uninitialized_move(C++20) ranges::uninitialized_default_construct(C++20) ranges::uninitialized_value_construct(C++20) ranges::destroy(C++20) ranges::destroy_at(C++20) ranges::uninitialized_copy_n(C++20) ranges::uninitialized_fill_n(C++20) ranges::uninitialized_move_n(C++20) ranges::uninitialized_default_construct_n(C++20) ranges::uninitialized_value_construct_n(C++20) ranges::destroy_n(C++20) ranges::construct_at(C++20) 垃圾收集支持 declare_reachable(C++11) undeclare_reachable(C++11) declare_no_pointers(C++11) undeclare_no_pointers(C++11) pointer_safety(C++11) get_pointer_safety(C++11) 杂项 pointer_traits(C++11) to_address(C++20) addressof(C++11) align(C++11) assume_aligned(C++20) C 库 malloc aligned_alloc(C++17) calloc realloc free 低层内存管理 std::allocator 成员函数 allocator::allocator allocator::~allocator allocator::address(C++20 前) allocator::allocate allocator::deallocate allocator::max_size(C++20 前) allocator::construct(C++20 前) allocator::destroy(C++20 前) 非成员函数 operator==operator!=(C++20 前) 定义于头文件 <memory> void destroy( pointer p ); (C++11 前) template< class U > void destroy( U* p ); (C++11 起) (C++17 中弃用) (C++20 中移除) 调用 p 所指的对象的析构函数 1) 调用 ((T*)p)->~T() 2) 调用 p->~U() 参数 p - 指向要被销毁的对象的指针 返回值 (无) 参阅 destroy[静态] 析构存储于已分配存储的对象 (函数模板)