C++ STL 中的 list front() 函数

c++server side programmingprogramming

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

STL 中的 List 是什么?

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

什么是 list::front()?

list::front() 是 C++ STL 中的一个内置函数,在 <list> 头文件中声明。 front() 返回列表容器中第一个元素的直接引用。

当我们将此函数用于空列表时,会导致未定义的行为。

语法

list_container.front();

此函数不接受任何参数。

返回值

此函数返回列表容器中第一个元素的引用。

示例

/* 在下面的代码中,我们尝试使用函数 front() 捕获列表中的第一个元素并显示结果 */

#include <bits/stdc++.h>
using namespace std;
int main(){
   //创建列表
   list<int> myList;
   //将元素插入列表
   myList.push_back(3);
   myList.push_back(2);
   myList.push_back(21);
   myList.push_back(11);
   //获取列表的第一个元素
   int first_ele = myList.front();
   cout<<"first element in a list is : "<<first_ele;
   return 0;
}

输出

运行上述代码将生成以下输出

列表中的第一个元素为:3

示例

/* 在下面的代码中,我们将用最后一个元素替换第一个元素的值,为此我们需要访问第一个和最后一个元素的值,这将通过调用 front() 和 back() 函数来实现。 */

#include <iostream>
#include <list>
int main (){
   std::list<int> myList;
   myList.push_back(77);
   myList.push_back(2);
   myList.push_back(21);
   myList.push_back(23);
   myList.front() = myList.back();
   std::cout << < "用最后一个元素替换第一个元素 : " << myList.front() << '\n';
   return 0;
}

输出

运行上述代码,将生成以下输出

用最后一个元素替换第一个元素 : 23

相关文章