std::pmr::polymorphic_allocator<T>::deallocate_bytes
提供: cppreference.com
<tbody>
</tbody>
void deallocate_bytes( void* p, std::size_t nbytes, std::size_t alignment = alignof(std::max_align_t) ); |
(C++20以上) | |
p の指す記憶域を解放します。 p は、 *resource() と等しい std::pmr::memory_resource x から、 x.allocate(nbytes, alignment) を用いて、一般的には allocate_bytes(nbytes, alignment の呼び出しを通して、確保されたものでなければなりません。
resource()->deallocate(p, nbytes, alignment); と同等です。
引数
| p | - | 解放するメモリを指すポインタ |
| nbytes | - | 元々確保したバイト数 |
| alignment | - | 元々確保したアライメント |
例外
何も投げません。
ノート
この関数は完全特殊化されたアロケータ std::polymorphic_allocator<> で使用するために導入されましたが、任意の特殊化で便利かもしれません。
関連項目
(C++20) |
allocate_object によって取得した生メモリを解放します (パブリックメンバ関数) |
(C++20) |
オブジェクトを破棄および解放します (パブリックメンバ関数) |
[静的] |
アロケータを使用して記憶域を解放します ( std::allocator_traits<Alloc>のパブリック静的メンバ関数)
|
| メモリを解放します ( std::pmr::memory_resourceのパブリックメンバ関数)
|