public member function
<map>

std::multimap::get_allocator

allocator_type get_allocator() const;
allocator_type get_allocator() const noexcept;
获取分配器
返回与 multimap 关联的分配器对象的副本。

参数



返回值

分配器。

成员类型allocator_type是容器使用的分配器类型,在 multimap 中定义为其第四个模板参数的别名(Alloc).

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// map::get_allocator
#include <iostream>
#include <map>

int main ()
{
  int psize;
  std::multimap<char,int> mymm;
  std::pair<const char,int>* p;

  // allocate an array of 5 elements using mymm's allocator:
  p=mymm.get_allocator().allocate(5);

  // assign some values to array
  psize = sizeof(std::multimap<char,int>::value_type)*5;

  std::cout << "The allocated array has a size of " << psize << " bytes.\n";

  mymm.get_allocator().deallocate(p,5);

  return 0;
}
该示例展示了一种使用与容器相同的分配器为 pair 数组分配内存的精细方法。
可能的输出是
The allocated array has a size of 40 bytes.


复杂度

常量。

迭代器有效性

没有变化。

数据竞争

访问容器。
不访问任何包含的元素:并发访问或修改它们是安全的。

异常安全

无异常保证:此成员函数从不抛出异常。
复制任何默认分配器的实例也保证永远不会抛出异常。

另见