
I'm using a undirected grap with hash_setS as the Edge List container and vecS as the Vertex List Container I'm using MSVC60 with SP5 as soon as i'm trying to use remove_edge(vertex1,vertex2,graph) i get the following error message. I dont understand the error message. It means, that my edgelist is a std::vector allthough i compile with boost::hash_setS. Could it be, that some BGL config file detects MSVC and concludes, that hash sets are not available in the MSVC stl?? d:\matthias\programmieren\boost\boost\graph\detail\adjacency_list.hpp(665): error C2039: 'find': Ist kein Element von 'vector<boost::detail::sei_<unsigned int,list<boost::list_edge<unsigned int,boost::property<enum boost::edge_weight_t,float,boost:: no_property>>>::iter,boost::property<enum boost::edge_weight_t,float,boost::no_property>>,allocator<boost::detail::sei _<unsigned int,list<boost::list_edge<unsigned int,boost::property<enum boost::edge_weight_t,float,boost::no_property>>>::iter,boost ::property<enum boost::edge_weight_t,float,boost::no_property>>>>' find is not an element of vector the corresponding code fragment is. template <class Graph, class EdgeList, class Vertex> inline void remove_edge_and_property(Graph& g, EdgeList& el, Vertex v, boost::disallow_parallel_edge_tag) { typedef typename EdgeList::value_type StoredEdge; typename EdgeList::iterator i = el.find(StoredEdge(v)), end = el.end(); if (i != end) { g.m_edges.erase((*i).get_iter()); el.erase(i); } }