C++ STL 中的 list::front() 和 list::back()


在本文中,我们将讨论 C++ STL 中 list::front() 和 list::back() 函数的工作原理、语法和示例。

什么是 STL 中的 List?

List 是一种数据结构,允许在序列中的任何位置进行常数时间的插入和删除操作。List 使用双向链表实现。List 允许非连续内存分配。与数组、向量和双端队列相比,List 在容器中任何位置进行元素的插入、提取和移动操作的性能更好。在 List 中,直接访问元素的速度较慢,并且 List 与 forward_list 类似,但 forward_list 对象是单向链表,只能向前迭代。

什么是 list::front()?

list::front() 是 C++ STL 中的一个内置函数,在头文件中声明。front() 用于引用 list 容器的第一个元素。此函数仅返回对第一个元素的直接引用,而 list::begin() 返回指向关联 list 容器的第一个元素的迭代器。

语法

mylist.front();

参数

此函数不接受任何参数。

示例

Input: list<int> List_container= {10, 11, 13, 15};
      List_container.front();
Output:
      Front element= 10;

返回值

此函数返回对关联 list 容器的第一个元素的引用。

示例

在线演示

#include <iostream>
#include <list>
using namespace std;
int main(){
   list<int> myList = { 10, 20, 30, 40, 50 };
   cout<<"Front element in my list is : "<<myList.front();
   return 0;
}

如果我们运行上述代码,它将生成以下输出:

Front element in my list is : 10

什么是 list::back()?

list::back() 是 C++ STL 中的一个内置函数,在头文件中声明。back() 用于引用 list 容器的最后一个元素。此函数仅返回对最后一个元素的直接引用。当列表为空时,该函数的行为未定义。

语法

mylist.back();

参数

此函数不接受任何参数。

示例

Input: list<int> List_container= {10, 11, 13, 15};
      List_container.back();
Output:
      Front element= 15;

返回值

此函数返回对 list 容器的最后一个元素的引用。

示例

在线演示

#include <iostream>
#include <list>
using namespace std;
int main(){
   list<int> myList = { 10, 20, 30, 40, 50 };
   cout<<"Last element in list is : "<< myList.back();
   return 0;
}

输出

如果我们运行上述代码,它将生成以下输出:

Last element in list is : 50

更新于:2020年3月6日

3K+ 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告