繁体   English   中英

如何访问结构向量数组中的结构元素?

[英]How to access the struct elements in a array of vectors of struct?

我是矢量的新手,但它们看起来相当简单。 我正在处理一个教授代码,她正在分配一个向量数组[n]。 我希望能够在数组中的每个元素上分配结构中的元素。 该结构称为边缘

struct edge {
   int vertex1;
   int vertex2;
   int weight;
};

Adj = new vector<edge>[n];

现在我希望能够为数组的每个元素的每个向量分配顶点 1、2 和权重。 我找不到正确的语法。 类似以下内容:

Adj[1].vertex1 = 11;
Adj[1].vertex2 = 20; 
Adj[1].weight = 40;

但是还要指定它们在数组中的位置。 谢谢!!

如果要将新元素插入向量中,则需要使用push_back

std::vector<edge> Adj;
Adj.push_back(Edge{11, 20, 40});

或者,您可以预先分配给定数量的元素(通过将元素数量传递给 ctor)。

请注意,C++ 向量在std库中的索引为 0。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM