The current C++ network code is enough to work correctly with the undirected network produced from R. However, the support for undirected networks is incomplete in that a search (in hasEdge or removeEdge) for A->B in an undirected network looks only for A->B and not B->A. This isn't a problem because the network edges correspond with those produced by R -- so undirected A->B / B->A is always represented as A->B in both R and C++ and so everything works in this particular instance.
The current C++ network code is enough to work correctly with the undirected network produced from R. However, the support for undirected networks is incomplete in that a search (in hasEdge or removeEdge) for A->B in an undirected network looks only for A->B and not B->A. This isn't a problem because the network edges correspond with those produced by R -- so undirected A->B / B->A is always represented as A->B in both R and C++ and so everything works in this particular instance.