Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Обращение к элементам вектора - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как измерить, сколько времени считала программа? http://www.cyberforum.ru/cpp-beginners/thread336124.html
Запускается прога, запрашивает число (например 1000), включается таймер (или читается время из winXP), идёт расчёт (например сумма от 1 до запрошенного числа), потом выключается таймер (или читается...
C++ Как в конструкторе класса передать параметром указатель на функцию? Друзья! Вот тут всё понятно, есть класс, в котором приватная функция f_0, в конструкторе передаётся указатель на функцию f_1. Эта функция (f_0 или f_1, у них одинаковые прототипы) будет... http://www.cyberforum.ru/cpp-beginners/thread336101.html
Поиск проблемы C++
#include <iostream> #include <cstring> struct kk{ int k, s; }p; using namespace std; int main()
Отследить ввод с клавиатуры... C++
Доброго времени суток! Господа прошу помочь решить такую задачу: в консольном приложении нужно запретить ввод символов и цыфр, только буквы... Посоветовали мне "юзать getch()" но как его...
C++ Аналог модуля Делфи в С++ http://www.cyberforum.ru/cpp-beginners/thread336079.html
Соббсно, в теме и есть вопрос. Есть модуль в делфях, а что есть аналогичное в С++??? . У нас преподают паскаль и тут задача поступила небольшая - написать программку(неважно какую) , используя...
C++ массив string void func(string *mas) { //здесь } int main() { string s = { "one", подробнее

Показать сообщение отдельно
Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
26.07.2011, 00:53
2 zuq
для доступа к элементам вектора можно использовать итераторы, с проверкой не указывает ли итератор на end(). Этот подход - так называемая идиома STL в использовании контейнеров ( взято из одного из изданий книги Стенли Липпмана ) .
В случае обращения к несуществующему элементу вектора - предсказать результат нельзя заранее.
Вот цитата из книги Стенли Липпман "Язык программирования C++ вводный курс" 4 изд. стр. 119:
Очень важно понять, что оператор индексирования ( [] ) можно использовать для доступа только к фактически существующим элементам.
...
...
Попытка обращения во время выполнения программы к несуществующему элементу является серьезной ошибкой. Подобно большинству подобных ошибок, практически ни одна из реализаций компилятора не обнаруживает их. Результат выполнения такой программы непредсказуем, однако почти наверняка такая программа правильно работать не будет.
...
...
Попытка индексирования несуществующих элементов, к сожалению, является весьма распространенной и грубой ошибкой программирования. Так называемая ошибка переполнения буфера ( buffer overflow ) - результат индексирования несуществующих элементов. Такие ошибки являются наиболее распространенной причиной проблем защиты приложений.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru