Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 65062
Модуль Forms 64838
Пример работы с... 63248
ТЕХНОЛОГИИ ДОСТ... 61552
Имитационное мо... 57399
Реклама
Сейчас на сайте
Гостей: 8
На сайте нет зарегистрированных пользователей

Пользователей: 13,081
новичок: Abdukarimov A
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование автомойки на GPSS + Отчет + Блок схемы
Меры близости на векторах в Delphi + Блок схемы
Обратное размещение элементов ЭВС на Delphi + Пояснительная записка

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Вернемся к примерам: как можно решить задачу “найти максимальный элемент"
Посмотрим, как можно решить задачу “найти максимальный элемент” с помощью последовательности STL. template
Iterator high(Iterator first, Iterator last)
// возвращает итератор на максимальный элемент в диапазоне [
first:last)
{
Iterator high = first;
for (Iterator p = first; p!=last; ++p) if (*high<*p) high = p; return high;
}






Также вам может показаться, что такая тема как http://www.vs1center.ru/product-certification/deklaracija-tr-ts.html никак не связана и даже не тематична с программированием.
Возможно, это и так, но все-таки зайдите на сайт vs1center.ru, чтобы узнать там много интересного про оформление декларации соответствия таможенного союза. Что означает оформление декларации соответствия таможенного союза, сколько стоит оформление декларации соответствия таможенного союза - про это написано на сайте vs1center.ru про оформление декларации соответствия таможенного союза. Это важная для многих тема - оформление декларации соответствия таможенного союза на сайте vs1center.ru. Спасибо за информацию про оформление декларации соответствия таможенного союза сайту vs1center.ru.

Обратите внимание на то, что мы исключили локальную переменную h, которую до сих пор использовали для хранения максимального элемента. Если вам неизвестен реальный тип элементов последовательности, то инициализация -1 выглядит совершенно произвольной и странной. Она действительно является произвольной и странной! Кроме того, такая инициализация представляет собой ошибку: в нашем примере число 1 оправдывает себя только потому, что отрицательных скоростей не бывает. Мы знаем, что “магические константы”, такие как -1, препятствуют сопровождению кода. Здесь мы видим, что такие константы могут снизить полезность функции и свидетельствовать о неполноте решения; иначе говоря, “магические константы” могут быть — и часто бывают — свидетельством небрежности.
Обобщенную функцию high() можно использовать для любых типов элементов, которые можно сравнивать с помощью операции < . Например, мы могли бы использовать функцию high() для поиска лексикографически последней строки в контейнере vector (см. упр. 7).
Шаблонную функцию high() можно применять к любой последовательности, определенной парой итераторов. Например, мы можем точно воспроизвести нашу программу.
double* get_from_jack(int* count); // Джек вводит числа типа double
// в массив
// и возвращает количество // элементов в переменной *count vector* get_from_jill(); // Джилл заполняет вектор
void fct()
{
int jack_count = 0;
double* jack_data = get_from_jack(&jack_count);
vector* jill_data = get_from_jill();
double* jack_high = high(jack_data,jack_data+jack_count); vector& v = *jill_data;
double* jill_high = high(&v[0],&v[0]+v.size()); cout << "Максимум Джилл 11 << *jill_high
<< "; Максимум Джека " << *jack_high;
// . . .
delete[] jack_data; delete jill_data;
}
Здесь в двух вызовах функции high() шаблонным типом аргумента является тип double*. Это ничем не отличается от нашего предыдущего решения. Точнее, выполняемые коды этих программ ничем не отличаются друг от друга, хотя степень общности этих кодов разнится существенно. Шаблонная версия функции high() может применяться к любому виду последовательности, определенной парой итераторов.

Прежде чем углубляться в принципы библиотеки STL и полезные стандартные алгоритмы, реализующие эти принципы, и для того чтобы избежать создания сложных кодов, рассмотрим несколько способов хранения коллекций данных.

В этой программе снова сделана серьезная ошибка. Найдите ее, исправьте и предложите универсальный способ устранения таких проблем.
Опубликовал katy April 22 2015 12:02:33 · 0 Комментариев · 1405 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
начисление процен...
Приложение Клиент...
IconCut [Исходник...
PDA версия сайта
Error mod
De Knop
Blobs [Исходник н...
Delphi 2005 для .NET
Sztransppanel
TelBook
Интерактивный инт...
IIIDTrans
Упорядоченный дин...
Последнее загруж...
EditNew
THttpScan v4.1
SynEdit
DelphiXIsoDemo1
Модифицированная ...
Библия хакера 2. ...

Топ загрузок
Приложение Клие... 100466
Delphi 7 Enterp... 86622
Converter AMR<-... 20077
GPSS World Stud... 12647
Borland C++Buil... 11755
Borland Delphi ... 8555
Turbo Pascal fo... 7037
Visual Studio 2... 4998
Калькулятор [Ис... 4760
FreeSMS v1.3.1 3541
Случайные статьи
Пример ЭС, основан...
Языки С и С++: бра...
Классы профилей Ca...
Клиент для LiveJou...
98/NT 4
Инкапсуляция
Упражнения для сам...
11.3. Улучшенные б...
Борьба с вредоносн...
Цель — проиллюстри...
Реализация моделей...
Загрязнение объект...
«Использование» ша...
UNTRACE (ЗАВЕРШИТЬ...
и режим ядра гаран...
Статические поля-м...
Выделение текста
ГЛАВА 3. ИСПОЛЬЗ...
узле Services (Слу...
Измените DACL, что...
Canon: как выбрать...
Программы и структ...
13.1. Интерфейс
Создание проекта в...
Чтение и запись ин...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?