deque get_allocator在C++ STL中的使用
deque ::get_allocator() 是C++ STL中的内置函数,用于获取容器deque的分配器。 语法:
Allocator_type get_allocator()
参数: 此函数不接受任何参数。
返回值: 返回与deque关联的分配器。以下程序说明了 deque::get_allocator() 函数的工作。
示例1:
// CPP程序示例
// deque get_allocator()
#include <bits/stdc++.h>
using namespace std;
int main()
{
//'de'是'deque'对象
deque<int> de;
//'allocator_type'被继承在'deque'中
//'d'是'allocator_type'对象
deque<int>::allocator_type d = de.get_allocator();
// 将 Allocator 与 Pair<int,int> 进行比较
cout << "Is allocator Pair<int, int> : "
<< boolalpha
<< (d == allocator<pair<int, int> >());
return 0;
}
输出:
Is allocator Pair : true
示例2:
// CPP程序示例
// deque get_allocator()
#include <bits/stdc++.h>
using namespace std;
int main(void)
{
// 创建一个类型为deque的容器
deque<int> de;
// 创建一个指针类型为int
int* array;
// 使用 mylist get_allocator 创建数组
array = de.get_allocator().allocate(3);
// 将一些数据插入数组中
for (int i = 0; i < 3; i++)
array[i] = i;
// 打印数组的详细信息
for (int i = 0; i < 3; i++)
cout << array[i] << " ";
return 0;
}
输出:
0 1 2
时间复杂度: O(1).
辅助空间: O(n)。 // n为队列的大小。