在C++中,如何从向量的最后一个元素获取字段?

2022-03-12 00:00:00 structure vector 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;

这两种方法中可能有一种适用于您的需要。

相关文章