У меня есть код со структурой с 3 целыми числами и одним оператором, я не понимаю эту часть: bool operator < (const event &t) const{
return x < t.x;
поэтому эта структура будет сортировать по значению x?и как печатать значения вектора <(структура)> е;?Я искал раньше о, но, к сожалению, не нашел ничего, чтобы решить эти вопросы, если вы хотите предложить какие-либо ссылки о том, как узнать больше о структурах, спасибо!
using namespace std;
struct event{
int x; //xi -> 0 xf -> 1
int yi,yf;
int t; //0 or 1, type of operation that form the rectangle
bool operator < (const event &t) const{
return x < t.x;
}
}
int main(){
vector<event> e;
int n; cin >> n;
for(int i=0;i<n;i++){
int xi,yf,xf,yi;
cin>>yi>>yf>>xf>>yi;
e.push_back({xi,yi,yf, 0});
e.push_back({xf,yi,yf, 1});
}
sort(e.begin(), e.end());
for(auto i : e){ //trying to print, fail
cout<<i<<" ";
}
return 0;
}
Сообщение об ошибке:
.cpp:24:9: note: 'event' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
cout<<i<<" ";
^