//处理批量添加边的函数,边都属于一个图 void handler_add_vertexes(Replier &rep){ string graph_name=rep.get_graph_name(); list<Vertex_u> &vertexes=rep.get_vertexes(); list<Vertex_u>::iterator it=vertexes.begin(); Subgraph *sub; uint32_t num=0; while(it!=vertexes.end()){ sub=graph_set->get_subgraph(graph_name,(*it).id);//得到该图该顶点所在的子图,子图不存在,则会创建一个 Vertex v(*it); int res=sub->add_vertex(v); if(res==0||res==1){ if(res==0){ graph_set->get_graph(graph_name)->vertex_num_increment(); num++;//添加成功,记录一笔 } vertexes.erase(it); it=vertexes.begin(); } else{ it++; if(it==vertexes.end()){ it=vertexes.begin(); } } } ostringstream stream_num; stream_num<<num; string string_num=stream_num.str(); rep.ans(STATUS_OK,string_num.c_str(),string_num.size()+1); }