在C++中,如何从向量的最后一个元素获取字段?
我有一个结构矢量vec。这样的结构具有元素int a, int b, int c
。我想把向量最后一个结构中的元素c赋给某个int var
。请问你能给我提供这个简单的解决方案吗?我要像这样围成一圈:
var = vec.end().c;
解决方案
关于获取对向量中最后一个元素的访问的问题的直接答案可以使用back()
成员完成。例如:
int var = vec.back().c;
注意:如果您的向量可能为空,则对back()
的调用会导致未定义的行为。在这种情况下,您可以使用empty()
成员empty()
在使用back()
之前检查向量的空状态:
if (!vec.empty())
var = vec.back().c;
这两种方法中可能有一种适用于您的需要。
相关文章