В стандартном классе vector нет функции push_front(). Почему? Реализуйте функцию push_front() для класса vector и сравните ее с функцией push_back().
Итак, настало время спросить: “А что, если объект класса list будет пустым?” Иначе говоря, “что если lst.begin()==lst.end()?” В данном случае выполнение инструкции *p будет попыткой разыменования элемента, следующего за последним, т.е. lst.end(). Это катастрофа! Или, что еще хуже, в результате можно получить случайную величину, которая исказит правильный ответ.
Также возможно вы думаете, что такая тема как http://stroi-beton.su/ никак не связана и даже не тематична с программированием.
Возможно, это и так, но все-таки зайдите на сайт stroi-beton.su - там можно узнать много интересного про производство бетонных заводов. Что означает производство бетонных заводов, сколько стоит производство бетонных заводов - про это написано на сайте stroi-beton.su. Это важная для многих тема - производство бетонных заводов. Спасибо за информацию про производство бетонных заводов сайту stroi-beton.su.
Последняя формулировка вопроса содержит явную подсказку: мы можем проверить, пуст ли список, сравнив итераторы begin() и end(), — по существу, мы можем проверить, пуста ли последовательность, сравнивая ее начало и конец.
Существует важная причина, по которой итератор end устанавливается на элемент, следующий за последним, а не на последний элемент: пустая последовательность — не особый случай. Мы не любим особые случаи, потому что — по определению — для каждого из них приходится писать отдельный код.
В нашем примере можно поступить следующим образом:
list::iterator p = high(lst.begin(), lst.end()); if (p==lst.end()) // мы достигли конца? cout << "Список пустой";
else
cout << "максимальное значение = " << *p << endl;
Работая с алгоритмами из библиотеки STL, мы систематически используем эту проверку. Поскольку в стандартной библиотеке список предусмотрен, не будем углубляться в детали его реализации. Вместо этого кратко укажем, чем эти списки удобны.
Опубликовал katy
April 22 2015 09:39:00 ·
1 Комментариев ·
3020 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Oleg27 October 25 2023 16:36:23
Приложения для андроид есть у многих казино, но не все они удобны для игры, на некоторых совершенно неудобно играть. Я перепробовал много таких приложений и остановил свой выбор на Космолот онлайн 1xbet рабочее рабочее 1XbEt зеркало когда нет возможности играть на сайте играю в приложении для android.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.