scoped_allocator_adaptor 類別

表示配置器巢狀結構。

template<class Outer, class... Inner>
    class scoped_allocator_adaptor;

備註

類別會封裝一或多個配置器巢狀結構。 每一個這樣的類別具有型別 outer_allocator_typeOuter之同義資料表的一個最外層的配置器,是 scoped_allocator_adaptor 物件的公用基底。 Outer 用來配置容器所使用的記憶體。 您可以藉由呼叫 outer_allocator取得這個配置器基底物件的參考。

巢狀的其餘部分具有型別 inner_allocator_type。 一個內部配置器會使用組態項目的記憶體在容器內。 您可以藉由呼叫 inner_allocator取得型別儲存物件的參考。 如果 Inner... 不是空的, inner_allocator_type 具有型別, scoped_allocator_adaptor<Inner...>,並 inner_allocator 指定 10% 成員物件。 否則, inner_allocator_type 具有型別, scoped_allocator_adaptor<Outer>,並 inner_allocator 指定整個物件。

巢狀運作,就像具有任意深度,請複製該程式碼最內層的封裝配置器的需要。

不可見的介面協助類別庫中描述這個樣板類別行為的幾個概念。 一個 最外層的配置器 斡旋任何對建構並終結該方法。 它是有效地由遞迴函式 OUTERMOST(X)所定義, OUTERMOST(X) 為下列其中一個。

  • 如果 X.outer_allocator() 語式正確,則 OUTERMOST(X) 是 OUTERMOST(X.outer_allocator())。

  • 否則,OUTERMOST(X) 為 X。

三個型別會示範將瀏覽定義:

型別

描述

Outermost

OUTERMOST(*this) 的型別。

Outermost_traits

allocator_traits<Outermost>

Outer_traits

allocator_traits<Outer>

Hh972427.collapse_all(zh-tw,VS.110).gif建構函式

名稱

描述

scoped_allocator_adaptor::scoped_allocator_adaptor 建構函式

建構 scoped_allocator_adaptor 物件。

Hh972427.collapse_all(zh-tw,VS.110).gifTypedef

名稱

描述

const_pointer

這個型別是與這個配置器 Outerconst_pointer 之同義資料表。

const_void_pointer

這個型別是與這個配置器 Outerconst_void_pointer 之同義資料表。

difference_type

這個型別是與這個配置器 Outerdifference_type 之同義資料表。

inner_allocator_type

這個型別是巢狀 scoped_allocator_adaptor<Inner...>配置器類型的一個同義資料表。

outer_allocator_type

這個型別是這個基底 Outer配置器類型的一個同義資料表。

pointer

這個型別是 pointer 的一個同義資料表與此配置器 (Allocator) Outer。

propagate_on_container_copy_assignment

這個型別適用的情況下,才會 Outer_traits::propagate_on_container_copy_assignment 適用或 inner_allocator_type::propagate_on_container_copy_assignment 適用。

propagate_on_container_move_assignment

這個型別適用的情況下,才會 Outer_traits::propagate_on_container_move_assignment 適用或 inner_allocator_type::propagate_on_container_move_assignment 適用。

propagate_on_container_swap

這個型別適用的情況下,才會 Outer_traits::propagate_on_container_swap 適用或 inner_allocator_type::propagate_on_container_swap 適用。

size_type

這個型別是 size_type 的一個同義資料表與此配置器 (Allocator) Outer。

value_type

這個型別是 value_type 的一個同義資料表與此配置器 (Allocator) Outer。

void_pointer

這個型別是 void_pointer 的一個同義資料表與此配置器 (Allocator) Outer。

Hh972427.collapse_all(zh-tw,VS.110).gifStructs

名稱

描述

scoped_allocator_adaptor::rebind 結構

定義型別 Outer::rebind<Other>::other 做為 scoped_allocator_adaptor<Other, Inner...>之同義資料表。

Hh972427.collapse_all(zh-tw,VS.110).gif方法

名稱

描述

scoped_allocator_adaptor::allocate 方法

您可以使用 Outer 配置器,配置記憶體。

scoped_allocator_adaptor::construct 方法

建構物件。

scoped_allocator_adaptor::deallocate 方法

藉由使用外部配置器,則會解除配置物件。

scoped_allocator_adaptor::destroy 方法

終結指定的物件。

scoped_allocator_adaptor::inner_allocator 方法

擷取型別 inner_allocator_type儲存物件的參考。

scoped_allocator_adaptor::max_size 方法

判斷可由外部配置器配置的物件最大數目。

scoped_allocator_adaptor::outer_allocator 方法

擷取型別 outer_allocator_type儲存物件的參考。

scoped_allocator_adaptor::select_on_container_copy_construction 方法

呼叫以初始化的每一個儲存的配置器物件建立新的物件 scoped_allocator_adaptor 每一個對應的配置器的 select_on_container_copy_construction

需求

標題: <scoped_allocator>

命名空間: std

請參閱

其他資源

標頭檔