boost::multi_index 是否创建密钥对象的副本。这个问题出现在我的脑海中,因为 std::map 必须根据它的设计存储一个关键对象。然而 boost::multi_index 并没有明确地要求密钥,而是从存储的对象中收集。
另一个问题是,如果 boost::multi_index 确实创建了它的键的副本,是否有任何容器不创建它的键的副本以将足迹保持在最低限度?
boost::multi_index 是否创建密钥对象的副本。这个问题出现在我的脑海中,因为 std::map 必须根据它的设计存储一个关键对象。然而 boost::multi_index 并没有明确地要求密钥,而是从存储的对象中收集。
另一个问题是,如果 boost::multi_index 确实创建了它的键的副本,是否有任何容器不创建它的键的副本以将足迹保持在最低限度?
Boost.MultiIndex 不会将键与它们关联的对象分开保存,而是依靠所谓的键提取器从对象本身中检索信息,而无需外部键存储。