在C++ STL中的multimap get_allocator()函数
multimap::get_allocator()是C++ STL中的一个函数,返回与此multimap相关联的allocator对象的副本。
语法:
multimap.get_allocator()
返回值: 此函数返回与此multimap相关联的allocator对象的副本。
以下示例说明get_allocator()方法:
示例:
//C++程序演示
//multimap::get_allocator()
#include
#include
using namespace std;
int main()
{
int psize;
multimap mm;
pair* p;
//使用mm的分配器分配一个由5个元素组成的数组:
p = mm.get_allocator().allocate(5);
//为数组分配一些值:
psize = sizeof(multimap::value_type) * 5;
cout << "已分配的数组的大小为 "
<< psize << " 字节。\n";
mm.get_allocator().deallocate(p, 5);
return 0;
}
已分配的数组的大小为 40 字节。
示例2:
//C++程序演示
//multimap::get_allocator()
#include
#include
using namespace std;
int main()
{
int psize;
multimap mm;
pair* p;
//使用mm的分配器分配一个由10个元素组成的数组:
p = mm.get_allocator().allocate(10);
//为数组分配一些值:
psize = sizeof(multimap::value_type) * 10;
cout << "已分配的数组的大小为 "
<< psize << " 字节。\n";
mm.get_allocator().deallocate(p, 10);
return 0;
}
已分配的数组的大小为 80 字节。