Boost 開発ガイド - 3.11 pool_alloc

プール割り当て

pool_alloc は、標準コンテナ テンプレート パラメータに使用できる 2 つのメモリ アロケータ、つまり pool_alloc と fast_pool_allocator を提供します。それらの動作は前のメモリ プール クラスとは少し異なります。メモリ割り当てが失敗すると、例外がスローされます std::bad_alloc 。これらは名前空間 boost にあり、ヘッダー ファイル <boost/pool/pool_alloc.hpp> をインクルードする必要があります。

特別な必要がない限り、組み込みメモリ アロケータを実装するには常に標準ライブラリを使用する必要があります。pool_alloc の使用は、コンテナで動作できることを確認するために慎重にテストする必要があります。

コード例

#include <boost/pool/pool_alloc.hpp>
using namespace boost;

void case5()
{
    
    
	vector<int, pool_allocator<int> > v; //pool_allocator代替默认的内存分配器

	v.push_back(10); //vector将使用新的分配器良好工作
	cout << v.size();
}

int main()
{
    
    
	case5();
}

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qq_36314864/article/details/132067513