命名空间
变体
操作

std::uses_allocator<std::flat_map>

来自 cppreference.com
< cpp‎ | 容器‎ | 扁平映射
 
 
 
 
定义在头文件 <flat_map>
template< class Key, class T, class Compare,

          class KeyContainer, class MappedContainer, class Allocator >
struct uses_allocator<std::flat_map<Key, T, Compare,
                      KeyContainer, MappedContainer>, Allocator>
    : std::bool_constant<std::uses_allocator_v<KeyContainer, Allocator> &&

                         std::uses_allocator_v<MappedContainer, Allocator>> {};
(自 C++23 起)

std::flat_map 提供 std::uses_allocator 类型特性的透明特化:容器适配器仅当基础容器使用分配器时才使用分配器。

内容

std::integral_constant 继承

成员常量

value
[静态]
true
(公共静态成员常量)

成员函数

operator bool
将对象转换为 bool,返回 value
(公共成员函数)
operator()
(C++14)
返回 value
(公共成员函数)

成员类型

类型 定义
value_type bool
type std::integral_constant<bool, value>

[编辑] 示例

#include <memory>
#include <flat_map>
 
static_assert(
    std::uses_allocator<std::flat_map<int, int>, void>::value == false &&
    std::uses_allocator<std::flat_map<int, int>, std::allocator<int>>::value == true
);
 
int main() {}

[编辑] 另请参见

检查指定类型是否支持 uses-allocator 构造
(类模板) [编辑]