vector.back() 和 vector[vector.size() - 1] 之间的区别?

Difference between vector.back() and vector[vector.size() - 1]?

本文关键字:vector 之间 区别 size back      更新时间:2023-10-16

std::vector调用vector.back()vector[vector.size() - 1]有什么区别吗?

vector.back()

更易于读写。此外,更多的容器提供c.back()而不是c[c.size() - 1],这对于泛型代码很重要。

在调试运行时中,两者都有可能被困在空容器上,生成的代码以及它们在使用优化时的性能也不会有很大差异。

>vector.back()是一个函数调用,编写起来更短:它更简单。vector[vector.size() - 1]是两个函数调用和一个减法,写起来更长:它更复杂。

在行为上,它们对于std::vector是一样的。但是back更通用,可以与所有标准双向容器一起使用(std::forward_list是唯一不支持它的标准容器(。operator[]仅受随机访问容器支持。

相关文章: