Я создал класс «Светлячок», похожее на это:Два вопроса о вектора использования
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());
перегрузив оператора < следующим образом:
bool operator <(const firefly &rhs) const {return time_flash < rhs.time_flash;}
Что плохого в этом? (я думаю, что что-то не так, потому что я не могу)
«Могу ли я это сделать?» Попробуй. «Я не могу» Почему бы и нет? –
И, пожалуйста, напишите один вопрос на вопрос. Вот почему они называются вопросами. –