Я создал класс «светлячок», похожий на этот:
class firefly{
private:
float time_flash;
public:
firefly(int, int, float, float);//parametric constr.
firefly();
firefly(const firefly& a);//copy constructor
void receive_flash(std :: vector<firefly>&, float, float, int);
friend bool operator <(const firefly&) const;
};
Фокус на двух последних функциях;У меня есть два вопроса о них.В основной программе я хотел инициализировать вектор светлячков следующим образом:
vector <firefly> fire_vec(10, firefly(5, 5,(float) 1., (float)1.) );
с помощью параметрического конструктора.Я могу это сделать?Второй вопрос.Этот вектор должен быть упорядочен алгоритмом сортировки,
sort(fire_vec.begin(), fire_vec.end());
с перегруженным оператором <следующим образом: </p>
bool operator <(const firefly &rhs) const {return time_flash < rhs.time_flash;}
Что-то не так в этом?(я думаю, что-то не так, потому что я не могу)