SubGraph(string p_name="noname", int p_keys, bool p_directed) : name(p_name), keys(p_keys), directed(p_directed) { }
SubGraph::SubGraph(IGraph& p_parent, string p_name) : parent(p_parent), Graph(p_name) { directed = parent.isDirected(); }
  SubGraph(string p_name="noname", int p_keys, bool p_directed)     : name(p_name), keys(p_keys), directed(p_directed) { }