C++ 在 STL中的list back()函数
C++ STL是什么
STL是C++中的 标准模板库 。该库包含了各种用途的内置函数和类。
list 也是在标准模板库(STL)中定义的数据结构。有很多与list数据结构一起使用的内置函数,可以在开头、结尾或任意特定位置插入元素。
一些函数用于从列表的开头、结尾或任意特定位置删除元素。
示例:
- insert() 函数用于在特定位置放置元素。
- push_back() 函数用于从末尾位置放置元素。
- push_front() 函数用于从列表的前面放置元素。
- pop_back() 函数用于从末尾位置删除元素。
- pop_front() 函数用于从开头位置删除元素。
- size() 函数用于获取列表的大小或列表中的元素数量。
- front() 函数用于获取列表的第一个元素。
- back() 函数用于获取列表末尾的元素。
- swap() 函数用于交换两个相同大小的列表。
- reverse() 函数用于完全反转一个列表。
- sort() 函数用于对列表进行排序(默认为升序)。
- splice() 函数用于将一个列表的元素转移到另一个列表。
- merge() 函数用于合并两个列表。
back()函数是什么
在列表中,我们有一个back()函数,它返回列表中最后一个元素的引用或指针。
与end()函数相比,end()函数返回指向最后一个元素的迭代器,而back()函数返回指向最后一个元素的指针。
语法:
listName.back();
该函数不接受任何参数。
C++示例1
#include
#include
using namespace std;
int main() {
//declaring the list
list myList;
myList.push_back(1);
myList.push_back(2);
myList.push_back(3);
myList.push_back(4);
myList.push_back(5);
myList.push_back(6);
myList.push_back(7);
myList.push_back(8);
myList.push_back(9);
myList.push_back(10);
int lastElement = myList.back();
cout<<"last element of the list is : "<
输出结果:
说明
在上面的代码中,我们声明了一个整数列表,然后使用push_back函数将元素推入列表中。由于我们推入列表的最后一个元素是十,当我们使用back()函数并打印出该元素时,它作为最后一个元素打印出来。
C++示例2
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int main() {
list<char> myList;
myList.push_back('a');
myList.push_back('b');
myList.push_back('c');
myList.push_back('d');
myList.push_back('e');
myList.push_back('f');
myList.push_back('g');
myList.push_back('h');
myList.push_back('i');
myList.push_back('j');
int lastElement_int = myList.back();
char lastElement_ch = myList.back();
int listSize = myList.size();
cout<<"last element of the list is : "<<lastElement_ch<<endl;
cout<<"last element of the list in ascii value is : "<<lastElement_int<<endl;
cout<<"the size of the list is : "<<listSize<<endl;
return 0;
}
输出:
解释
在上面的代码中,我们有一个字符列表,并且我们打印了最后一个元素及其ASCII值。
C++示例3
当列表为空时:
#include
#include
using namespace std;
int main() {
//declaring the list
list myList;
int lastElement = myList.back();
int listSize = myList.size();
cout<<"last element of the list is : "<
输出:
解释
在上面的代码中,我们声明了一个整数类型的列表,但是我们没有向列表中添加任何元素。现在,如果我们使用back函数获取最后一个元素,它会返回0作为最后一个元素,如果我们打印列表的大小,它会返回0,这是正确的。
C++示例4
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int main() {
//declaring the list of characters
list<char> myList;
char lastElement = myList.back();
int listSize = myList.size();
cout<<"last element of the list is : "<<lastElement<<endl;
cout<<"the size of the list is : "<<listSize<<endl;
return 0;
}
输出:
解释
在上面的代码中,我们创建了一个字符列表,但没有向列表中推入任何元素。由于列表为空,当我们使用back()函数获取列表的最后一个元素时,它返回一个空或null字符。
所以,如果列表为空并且我们对列表使用back()函数,它会显示一些未定义的行为。