#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
vector<pair<int,int> > arr;
arr[0].first=20,arr[0].second=1;
arr[1].first=3,arr[1].second=2;
arr[2].first=230,arr[2].second=3;
arr[3].first=230,arr[3].second=4;
arr[4].first=202,arr[4].second=5;
arr[5].first=-20,arr[5].second=6;
sort(arr.begin(),arr.end());
vector<pair<int,int> >::iterator it;
for(it=arr.begin();it!=arr.end();it++)
{
cout<<it->first<<it->second<<endl;
}
}
Эта программа работает неправильно, что может быть причиной этого?
Также я хочу иметь отсортированный вектор пар, в котором сортировка выполняется значением.эта программа рушится, почему?
[ 'vector> arr (6);'] (http://en.cppreference.com/w/cpp/container/vector/vector) должен устранить проблему. –
И один вопрос за вопрос пожалуйста. –
Когда вы создаете вектор, используя конструктор по умолчанию, вектор *** пуст ***. Любое индексирование будет за пределами границ и приведет к * неопределенному поведению *. –