我正在尝试Vertex
从向量返回一个类型的对象。我只能使用迭代器;返回一个取消引用的迭代器做我想要的吗?更准确地说,我想初始化v2
为Vertex
我正在返回的指针:即:
Vertex* v2;
v2 = &(p_graph->getVertex(vert2));
为了做到这一点,我必须使用getVertex()
返回 aVertex
来在它前面加上 & 来创建一个指针并将其分配给v2
. getVertex()
功能是:
Vertex Graph::getVertex(std::string v) { // gets the vertex
for (std::vector<Vertex>::iterator it = vertices.begin(); it != vertices.end(); it++) {
if ((it->getName()).compare(v) == 0)
return *it; // if strings are the same return vertex
}
exit(1);
}
但是我无法分配它,因此在这部分代码中的某个地方出现了错误,我一直试图找到几个小时。