使用 boost::asociative 属性映射和 boost::BIMAP 接口
Using boost::associative property map with boost::BIMAP interface
我无法为提升双映射实现提升的关联属性映射接口。
我有一个如下所示的bimap,我尝试为它定义一个boost::asociative 属性map。我想为我的双映射使用"放置"和"获取"帮助程序函数。代码如下:
typedef boost::bimaps::bimap< vertex_descriptor_t, size_t > vd_idx_bimap_t;
typedef boost::associative_property_map< vd_idx_bimap_t > asso_vd_idx_bimap_t;
// define bimap
vd_idx_bimap_t my_bimap;
asso_vd_idx_bimap_t my_asso_bimap(my_bimap);
我收到一个编译错误,因为
error: no type named âsecond_typeâ in âboost::bimaps::container_adaptor::container_adaptor<boost::multi_index::detail::ordered_index<boost::m.... goes on long list.
我知道,bimaps是通过属性地图支持的。 有关文档,请参阅此处。只是想知道我将如何使用关联属性映射。如果我可以为我的关联属性映射定义左或右 BIMAP,那也没问题。请建议。
你需要告诉它使用bimap的哪一侧:
typedef boost::associative_property_map<vd_idx_bimap_t::left_map> asso_vd_idx_bimap_t;
// OR
typedef boost::associative_property_map<vd_idx_bimap_t::right_map> asso_vd_idx_bimap_t;
所以,在科里鲁上直播
#include <boost/bimap.hpp>
#include <boost/property_map/property_map.hpp>
#include <iostream>
using namespace boost;
int main()
{
typedef int vertex_descriptor_t;
typedef boost::bimaps::bimap< vertex_descriptor_t, size_t > vd_idx_bimap_t;
typedef boost::associative_property_map<vd_idx_bimap_t::left_map> asso_vd_idx_bimap_t;
// define bimap
vd_idx_bimap_t my_bimap;
asso_vd_idx_bimap_t my_asso_bimap(my_bimap.left);
}
相关文章:
- 是否可以覆盖 "find" 和 "erase" boost::bimaps::bimap.left 的方法?怎么办?
- 是boost :: bimap超杀击功能
- C boost :: bimap insert()方法不起作用
- 将 boost::d ynamic_bitset<> 插入 boost::bimap
- Boost Bimap 在调试版本中占用太多内存
- 使用boost::关联属性映射插入boost::BIMAP..失败
- 使用 boost::asociative 属性映射和 boost::BIMAP 接口
- 如何在使用 Boost.bimap 时避免密钥复制
- 将std::map复制/插入到boost::bimap中
- 如何从静态列表构建Boost bimap
- 在现代C++中实现 bimap,无需 Boost
- find() problems with boost bimap
- 如何以无序和可变的方式使用boost::bimap
- 公开私人作用域Boost.BiMap迭代器的公共视图
- 使用带有boost::bimap的自定义分配器
- boost::bimap not taking vector_of
- OPERATOR_BRACKET_IS_NOT_SUPPORTED on boost::bimap
- 应该使用multimap、boost::bimap、multiset或任何其他数据结构
- 将指针与 Boost::bimap
- boost::bimap of shared_ptr & boost::transform_iterator