nums.end()指向最后一个元素的下一个位置,所以访问最后一个元素的操作为nums.end() - 1。
#include <iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main() {
vector<int> nums(6);
vector<int>::iterator last;
int k;
cout << "输入大小为6的数组:" << endl;
for (int i = 0; i < 6; i++) {
cin >> k;
nums[i] = k;
}
cout << endl;
last = nums.end()-1;
cout << "最后一个数是" << *last << endl;
cout <<endl;
cout << "数组排序后是: " << endl;
sort(nums.begin(), nums.end());
for (int i = 0; i < nums.size(); i++) {
cout << nums[i] << " ";
}
所以 sort(start,end)是对从start开始到end之前的一个数进行排序。
比较细节,新人报道。