Мне нужно получить доступ к элементу в определенной позиции в очереди "queArr".Из этого элемента, который является объектом класса "plane", мне нужно вызвать функцию-член getTime, которая возвращает приватное время члена.Проблема в том, что я не знаю, как получить доступ к элементу, так как он может находиться где угодно в очереди.
Я попытался использовать оператор [] и функцию que.at (), но оба безуспешно.Это единственные варианты, которые я мог найти в определении deque (https://en.cppreference.com/w/cpp/container/deque), которое казалось уместным.
Это текущий код. Он захватывает позицию элемента с наименьшим количеством топлива (доступ черезgetFuel ()) и затем удаляет его с помощью .erease (pos), используя позицию, добавленную к итератору, указывающему на первый элемент Ques. Перед этим, в месте комментария, мне нужно получить доступ к функции-члену getTime этого элемента идобавьте это в переменную totalArr. Как получить доступ к моей текущей проблеме.
//namespace std is being used
landingDelay+=landingTime;
cout<<"A plane has started landing \n";
int quePos=0;
int ref=queArr.front().getFuel();
for(int j=0; j<queArr.size(); j++)
{
if(queArr.at(j).getFuel()<ref)
{
ref=queArr.at(j).getFuel();
quePos=j;
}
}
it=queArr.begin();
it+=quePos;
//I was thinking something here
queArr.erase(it);
Любая помощь будет высоко ценится:)