Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364150
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62792)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21320)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21697)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8694)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3463)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20645)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Реферат: Стандартная библиотека на С++: алгоритм

Название: Стандартная библиотека на С++: алгоритм
Раздел: Рефераты по информатике, программированию
Тип: реферат Добавлен 16:16:46 31 января 2010 Похожие работы
Просмотров: 395 Комментариев: 2 Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать

РЕСПУБЛИКА КАЗАХСТАН

УНИВЕРСИТЕТ "ТУРАН"

Кафедра "Информационных технологии"

Тема реферата:

"Стандартная библиотека на С++: Алгоритм"

Выполнил: Айнакулов Д.А.

3-курс. "ИС"9 гр.

Проверила: Зиятбекова Г.З.

Алматы – 2008 г.


Содержание

Введение

Стандартная библиотека

Структура библиотеки

Алгоритмы

Заключение

Список использованной литературы


Введение

Языки программирования С++ является универсальными языками программирования высокого уровня, позволяющим создавать различного вида программы прикладного или системного характера. C++ еще является одним из наиболее широко применяемых языков программирования, индустриальным стандартом для создания приложений всевозможного рода. Кроме того, это очень рациональный язык, позволяющий использовать ресурсы более эффективно, чем Pascal , VisualBasic или Delphi . Также его неоспоримым достоинством является наличие быстрого компилятора (фирма Microsoft ). Язык C++ является базовым для программирования на VisualC++. Он используется для программирования в операционных системах и Unix/Linux, и Windows.

Основная задача курса С++ заключается в том, чтобы показать слушателям, что язык программирования С++ - это полноценный, продвинутый и комплексный язык, предназначенный для создания сложных программ, таких как "Бухгалтерия 1С:", "Windows 2000" и клиент - серверовских приложений.


Стандартная библиотека

Стандартная библиотека Си++ включает стандартную библиотеку Си с небольшими изменениями, которые делают её более подходящей для языка Си++. Другая большая часть библиотеки Си++ основана на Стандартной Библиотеке Шаблонов.Стандартная библиотека шаблонов STL. Она предоставляет такие важные инструменты, как контейнеры (например, векторы и списки) и итераторы (обобщённые указатели), предоставляющие доступ к этим контейнерам как к массивам. Кроме того, STL позволяет сходным образом работать и с другими типами контейнеров, например, ассоциативными списками, стеками, очередями. Используя шаблоны, можно писать обобщённые алгоритмы, способные работать с любыми контейнерами или последовательностями, определяемыми итераторами.

Так же, как и в Си, возможности библиотек активизируются использованием директивы #include для включения стандартных файлов. Всего в стандарте Си++ определено 50 таких файлов.

STL до включения в стандарт Си++ была сторонней разработкой, в начале — фирмы Hewlett-Packard HP, а затем SGI. Стандарт языка не называет её "STL", так как эта библиотека стала неотъемлемой частью языка, однако многие люди до сих пор используют это название, чтобы отличать её от остальной части стандартной библиотеки (потоки ввода/вывода Iostream, подраздел Си и др.). Проект под названием http://www.stlport.org/ STLport, основанный на SGI STL, осуществляет постоянное обновление STL, IОstream и строковых классов. Некоторые другие проекты также занимаются разработкой частных применений стандартной библиотеки для различных конструкторских задач. Каждый производитель компиляторов Си++ обязательно поставляет какую-либо реализацию этой библиотеки, так как она является очень важной частью стандарта и широко используется.

''Стандартная библиотека''языка программирования — набор функций и процедур, доступных для вызова из любой программы, написанной на этом языке и присутствующей во всех реализациях языка. В некоторых случаях стандартная библиотека описывается в стандарте языка Python,Perl, Java, в некоторых — отдельными стандартами Си или определяется исходя из практического наличия функций в реализациях языка Basic,Pascal.

В зависимости от возможностей языка, стандартная библиотека может содержать:

* процедура процедуры и функция (программирование) функции

макросы

* глобальная переменная глобальные переменные

* класс программирование классы

* Обобщённое программирование шаблоны

Обычно стандартная библиотека содержит основные алгоритмы и структуры данных, необходимые для:

* работы с динамически распределяемая память динамической памятью

* файловыми операциями ввода-вывода

* операциями ввода-вывода данных на терминал

* конвертацией данных между типами

* функции для работы со строками

* математические операции

* функции для работы с сетью

* функции для обеспечения обработки исключений и ошибок в программе

* функции для поддержки поток (информатика)многопоточности

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

''Первый'': стандартная библиотека должна содержать в себе только те процедуры и функции, которые используются практически всеми и обладают максимальной универсальностью. В частности, этой позиции придерживался Бьярне Строуструп (автор языка C++) <ref> Bjarne Stroustrup. The C++ Programming Language. 3rd Ed. Addison-Wesley, 1997</ref>

''Второй'': стандартная библиотека должна содержать в себе максимально-возможное количество типичных алгоритмов, обеспечивать простую работу с большинством (в идеале, со всеми) объектами, с которыми может взаимодействовать программа. Одним из примеров реализации этого принципа является язык Python, девиз которого "Batteries included" (батарейки в комплекте) <ref>Guido van Rossum. http://docs.python.org/tut/ Python Tutorial</ref>.

Структура библиотеки

В библиотеке выделяют пять основных компонентов:

* 1. Контейнер (container) - хранение набора объектов в памяти.

* 2. Итератор (iterator) - обеспечение средств доступа к содержимому контейнера.

* 3. Алгоритм (algorithm) - определение вычислительной процедуры.

* 4. Адаптер (adaptor) - адаптация компонентов для обеспечения различного интерфейса.

* 5. Функциональный объект (functor) - сокрытие функции в объекте для использования другими компонентами.

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

Алгоритмы

В библиотеке STL существует группа функций, выполняющих некоторые стандартные действия, например поиск, преобразование, сортировку, копирование и т. д. Они называются алгоритмами. Параметрами для алгоритмов, как правило, служат итераторы. Алгоритму нет никакого дела до типа переданного ему итератора. Главное, чтобы последний подпадал под определенную категорию. К примеру, если параметром алгоритма должен быть однонаправленный итератор, то подставляемый итератор должен быть либо однонаправленным, либо двунаправленным, или же итератором произвольного доступа.Примером алгоритма может служить equal. Он сравнивает две цепочки данных, адресуемых входными итераторами, и описан следующим образом:

template <class InputIterator1, class InputIterator2>bool equal(InputIterator1 first1, InputIterator1 last1, InputIterator2 first2);

Первый параметр - входной итератор, указывающий на первую цепочку сравниваемых данных. Второй адресует индикатор конца диапазона данных. Третий параметр - вторая цепочка сравниваемых данных. А вот фрагмент сравнения двух векторов (массивов) v1 и v2:

bool isEqual = equal(v1.begin(), v1.end(), v2.begin());

Здесь использованы стандартные методы векторов: begin() возвращает итератор, настроенный на начало цепочки данных, а end() возвращает индикатор выхода за диапазон. Если все элементы векторов попарно равны друг другу, то equal вернет значение "истина" (true).Отметим, что все алгоритмы можно разделить на две основных категории: те, которые изменяют данные, и те, которые их не изменяют.


Заключение

Замечание по названию С++ : ++ - знак операции инкремента в С, если этa операция применяется к переменной (обычно к индексу массива или указателю) значение переменной увеличивается так, чтобы указывать на следующий элемент. Название С++ было предложен Риком Маскитти (RiciMascitti). С++ в дальнейшем следует рассматривать как уточняющее название, употребляемое либо по формальному поводу, либо во избежании двусмысленности. Среди посвященных С++ именуется С, а язык С, описанный в, "старым С". Более короткое обозначение С является синтаксической ошибкой. Оно также использовалось как название одного, не относящегося к теме статьи, языка. Ценители семантики С найдут, что С++ менее выразительном чем ++С, однако последнее не является приемлемым названием. Язык не назван D, так как является расширением С, а не попыткой решить некие проблемы изначально присущие базовой структуре языкa С. Название С++ отражает эволюционный характер изменений относительно старого С. Еще одну интерпретацию названия С++.

Эволюционизируя из языка С, C++ прошел через несколько промежуточных этапов известных под общим названием "С с классами". Основным намерением являлось создание возможностей абстракции при проектировании больших систем и в то же время полезных в областях, где очень важны лаконичность С и его способность выражать низкоуровневые детали. В связи с этим было специально предусмотрено чтобы использование классов С, предоставляющих общий и гибкий механизм структурирования не приводило в сравнении со старым С к издержкам ни по памяти ни по времени исполнения. Зa исключением таких деталей как введение новых ключевых слов, С++ является надмножеством языка С. "Реализация и совместимость". Язык полностью реализован и используется.


Список использованной литературы

1. Страуструп Б. Язык программирования C++, спец. изд. Пер. с англ. — М.: "Издательство БИНОМ"; СПб.: Невский Диалект, 2001.

2. Лишнер Р. С++. Справочник. — СПб.: Питер, 2005.

3. Саттер Г. Новые сложные задачи на С++. : Пер. с англ. – М.: Издательский дои "Вильямс", 2005

4. Коплиен Дж. Программирование на С++. Классика Computer Science. — СПб.: Питер, 2005.

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Где скачать еще рефератов? Здесь: letsdoit777.blogspot.com
Евгений06:43:25 19 марта 2016
Кто еще хочет зарабатывать от 9000 рублей в день "Чистых Денег"? Узнайте как: business1777.blogspot.com ! Cпециально для студентов!
19:50:02 28 ноября 2015

Работы, похожие на Реферат: Стандартная библиотека на С++: алгоритм

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

Да, в любом случае.
Да, но только в случае крайней необходимости.
Возможно, в зависимости от цены.
Нет, напишу его сам.
Нет, забью.



Результаты(150195)
Комментарии (1830)
Copyright © 2005-2016 BestReferat.ru bestreferat@mail.ru       реклама на сайте

Рейтинг@Mail.ru