Another baffling error message

Sorry to have to ask the list for help, but I am once again stumped. Perhaps you will find this easy. I have some classes defined: using namespace std; using namespace boost; class POS{..stuff..} class LEN{...stuff...} typedef adjacency_list<vecS, vecS, undirectedS, POS, LEN> DG; typedef graph_traits<DG>::vertex_descriptor Vertex; typedef graph_traits<DG>::edge_descriptor Edge; class DelaunayGraph: public DG { public: void foo() { Edge e = whatever(); remove_edge(e, *this); // <<<<----THIS BLOWS UP ..stuff... } The error I am getting is: c:\documents and settings\eric\my documents\visual studio 2008\projects\shuttle\delaunay\trunk\delaunaygraph.h(371) : error C2661: 'boost::undirected_graph_helper<Config>::remove_edge' : no overloaded function takes 2 arguments with [ Config=boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS,boost::vecS,boost::undirectedS,POS,LEN>,boost::vecS,boost::vecS,boost::undirectedS,boost::property<boost::vertex_bundle_t,POS>,boost::property<boost::edge_bundle_t,LEN>,boost::no_property,boost::listS>::config ] What am I doing wrong in this instance, and what design principle am I violating? Eric

Hi Eric, On Aug 6, 2011, at 3:14 AM, Eric Fowler <eric.fowler@gmail.com> wrote:
class DelaunayGraph: public DG { public: void foo() { Edge e = whatever(); remove_edge(e, *this); // <<<<----THIS BLOWS UP ..stuff... }
I think you're invoking a member function instead of the free function you intended. Try boost::remove_edge. HTH G
participants (2)
-
Eric Fowler
-
Gordon Woodhull