Boost.Container flat_map和std :: string_view

时间:2018-05-10 03:22:00

标签: dictionary boost string-view

有一段时间我使用Boost的flat_map作为我的首选关联集合,原因在于他们的文档介绍中引用的原因,以及(最初)它在编译器的std实现之前提供了更新的功能,跨平台也是如此。

现在,我想开始使用string_view来防止复制字符串,当这些字符串来自较大输入的子字符串时。 string_view指向较大字符串中的一系列字符,而不必将其复制到新的std::string实例中。

在寻找要使用的地图时,我记得我过去喜欢的Boost.Container的另一个渐进功能是保形键,你可以使用正确对比的任何东西。存储密钥,而不是转换为实际的密钥类型。

但是现在我在文档中找不到任何提及。我知道std::map现在可以做到这一点(自C ++ 14以来),但我宁愿将flat_map用于微小的集合。

如果在boost::flat_map::insert等中不明显,那么多年前我能看到什么才能实现这种灵活性?使用现在使用最新编译器的优秀平面集合是什么?

0 个答案:

没有答案