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