Б. Страуструп - Язык программирования С++. Специальное издание, 3-изд. Бином. 2004 (1160791)
Текст из файла
Перед вами — специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по С.ь-ь. В него бьшп добввленьь два новьс» приложения: ".,Тоь алнзацня" и цБсвонагнослюь пс л.юючентю н гтандн/лютая опаюпот<тсю" (ооадостйльны на сервере Ь!!р://вюъч»ч.гезеагсЬ.а!!.сош/-Ьв) . В результате моноюрафия содержит полное описание языка Сь+. его стандартной библиотеки (ВТ1.) и ключевых методов разработки программ. Основанная ьи стандарте АЧВ)/1ВО, книга является источником самого последнего и полного описания всех возможностей языка Ст+, включая компоненты стандартной библиотеки, в том числе: абстрактные классы в качестве интерфейсов; иерархию клас< ов при обьектно-ориентнрованном программировании; шаблоны как основу безопасного относительно типов обобщенного программирования; ооработку исключений, возниквющих в результате типичных оьнибок; использование про<"гранств имен (пвшеврасев) для д<хтиження модульности больших проектов; определение тнпв нв этвпе исполнения (ЯТТ!) для слабо связанных систем; подмножество С языка С++ для совместимости с (', и работы на системном уровне: стандартные контейнеры и алгоритмы; стандартные строки, потоки ввода/вывода и числовые данные; совместимость с С, локализацию (интернационавнзацию) и безопасность прк обработке исключениий.
В данном издании Ььерн Страуструп излагает С++ в форме, сп<е более доступной для начинающих. В то же время в него вкшочены такие < ведения н методики, которые могут оказаться полезными даже для экспертов по С++. ЪУе1ь-поддержка книги осуществляетгя по адресу; Ь!!р://ню»ч»ч.ачгл оььь/свекл/ Бьерн Сююю(юа)/сюююр)/юю (Б/нпгс.йюгоююв1гююр) непосредственно разработал н первым осуществил реализацию языка программирования С-н-, Он — автор книг; ™Язв<к ююрогрсьм.и<юров<юная С+з-" (Пюе С--ь Ргоагатт(ююа Бапуиаае, первое издание — 1985, второе — 1991, третье — 1997), "Т:юю/юсюоо»юююое ррновт)ство но нзю юнй Сь+ с нодьменюююсююьююя.ьюююн ( Тйе .4юююаоюа)г<1 С++ Ке/егс ююсс Ма<юг<а!) п "Проектирование и эволюция Ст+" ( Туге Певюдп сюпю/ Бююо1<юйоп о/'С++ ) .
Закончил университет в Аархусе (Дания) н Кзмбрнджскнй университет (Ашлия). В настоящее время д-р Страуструн возглавляет Отдел исследований в области крупномасштабного программирования компании АТЙТ ЕаЬз н является членом совета АТЙТ, АТ<<гТ Вей 1,аЬога!опев н АСМ. Область его научных интересов — распределенные гистемы, операционные системы, моделирование, проектирование н программирование.
Он является редактором серии С++ 1п-1Юер!Ь. выпускаемой издательством А<Ивов-'»ю»юез1еу. РКООРАММ!% ЕАХООАОЕ ПРЕС $ а!ай ЕЕЭГГаЮХ В~агпе Ягоа1гир АТЛЕТ 1.аЬя Ногйат РагК Кеъ Легяеу 1 А<Ыгяоп-Фее! еу Ап !гпрпп1 о1А<Мгеоп%ее!еу Еопдпип, !пе. Пеа<ппд, Мааавсйпаеоа . !!агго«с Епд!впд <<Меп!о Рагп, СаЫогпга Вегас!ау Се!!гого<а Ооп Мгпв, Опгапо ' оуопеу Вопп Апг<<ег<гапг Та!<ус Мех<со Спу Краткое оглавление Предисловие автора к третьему русскому изданию От редакции русского издания .
Предисловие . Предисловцр ко второму изданию . Предисловие к первому изданию . ВВЕДЕНИЕ 1. Обращение к читателю . 2. Обзор С+~-.... 3. Обзор стандартной библиотеки Часть 1. Основные средства. 4. Типы и обьявления. 5. Указатели, массивы и структуры. 6. Выражения и инструкции . 7. Функции.
8. Пространства имен и исключения. 9, Исходные файлы и программы ...., Часть П. Механизмы абстракции. 10. ?(пассы . 11. Перегрузка операторов. 12. Производные классы. 13. Шаблоны. 14. Обработка исключений 15. Иерархии классов.......„,...,...... ,...25 .27 .29 .31 .зз .37 105 ,. 107 127 147 .... 185 .... 209 .... 241 .... 267 ....., 269 ....
309 , ....349 .. 377 ... 407 Краткое оглавление 22. Численные методы. ..... 757 . 759 ....... 797 . 84 1 ....... 1 0 1 7 1 055 Предметный указатель . Часть П!. Стандартная библиотека . 16. Организация библиотеки и контейнеры ... 17. Стандартные контейнеры 18. Алгоритмы и объекты-функции ... 19. Итераторы и распределители памяти ........ 20. Строки. 21. Потоки.... Часть ГУ. Проектирование с использованием С++ 23. Разработка и проектирование.
24. Проектирование и программирование ... 25. Роли классов. Приложения и предметный указатель Приложение А. Грамматика.. Приложение Б. Совместимость., Приложение В. Технические подробности ..... Приложение Г. Локализация ... Приложение Д.
Безопасность исключений и стандартная библиотека ..... . 483 ....... 485 5 1 9 ....... 5 69 ....... 6 1 3 ..... 671 725 . 869 . 871 . 891 ....... 903 ..... 947 Оглавление ?5 .27 ,29 .31 33 35 ВВЕДЕНИЕ Глава 2 2.1. 2.2. 2.3. Предисловие автора к третьему русскогяу изданию . Огн редакции ругского издания Предгггловгге Предисловие ко второлгу изданию Предисловие к ггервому ггздатоо . Глава 1. Обращение к читателю . 1,1. Структура атой книги. 1.1.1. Примеры и ссылки., 1.1.2.
Упражнения . 1.1.3. Замечания по реализации .. 1.2. Изучение С++ 1.3. Структура С+е 1.3.1. Эффективпость п структура ... 1,3.2. Философские замечания 1.4. Исторгические замечания ., 1.5. Использование С»-- . 1.6, С и Се»- 1.6.1. Рекомендапггн для программистов на С,.....,.. 1.6.2. Рекомендации для программистов на С++ ... 1.7. Размыщлення о программировании на С++ . 1.8. Советы.
1.8.1. Литература . Обзор С++. Что такое С»- ? Парадигмы программирования Процедурное программирование .. 2.3.1. Переменные и арифметические операцин ........... 2.3.2. Условия п циклы 2.3.3. Указатели и массивы ... Модульное программирование 2.4.1. Раздельная компиляция . 2А.2.
Обработка исключений. Абстракция данных 2.5.1. Модули, определяющие типы 2.5.2. Тпггы, определяеыьге пользователем .. 2.5.3. Конкретные типы .. 2.5.4. Абстрактные тггггы 2.5.5. Виртуальные функции .. Объектно-ориентированное программирование „...„....
2.6.1. Проблемы, связанные с конкретными типами ... 2.6.2. Иерархия классов .37 37 39 .40 .40 ,. 41 42 .,43 ..44 .45 ,. 47 .49 .....50 .....50 51 52 53 .57 57 .... 59 . 60 ..62 .62 .. 64 ...65 ....,66 .66 ...68 . 69 . 71 ....73 ......73 .....74 ,... 75 Оглавление 2.7. Обобщенное программирование 2,7.1. Контейнеры .. 2.7.2.
Обобщенные алгоритмы 2.8. Заключение. 2.9. Советы .. Глава 3. Обзор стандартной библиотеки . 3.10. Средства стандартной библиотеки . 3.11. Советы . Часть!. Основные средства Глава 4. Типы и объявления 4.1 4.2 4.3 4.4 4.6 4.7 4.8 3.1 3.2 3.3 ЗА 3.5 3.6 3.7 3.8 3.9 Введение . Здравствуй, мнр1 .
Пространство имен стандартной библиотеки ............. Вывод .. Строки 3.5.1. С-строки .. Ввод Контейнеры. 3.7.1, Вектор. 3.7.2. Проверка допустплюсти диапазона .. 3.7.3. Список...... 3.7А. Ассопиативные массивы .. 3.7.5. Стандартные контейнеры Алгоритмы., 3.8.1, Использование итераторов .. 3.8.2. Типы итераторов .
3.8.3. Итераторы и ввод/вывод. 3.8.4. Проход с выполнением п предикаты .. 3.8.5. Алгоритмы, использующие функции-члены „. 3.8.6. Алгоритмы стандартнойбиблиотеки . Математические вычисления ... 3.9.1. Комплексные числа . 3.9.2. Векторная арифметика 3.9,3. Поддержка базовых численных операций ........
Типы............,........„.....,.........,.........,.... 4.1.1. Фундаментальные типы Логические типы, Символьные типгв 4.3.1. Символьные литералы Целые типы . 4.4.1. Целые литералы Типы с плавающей точкой 4.5.1, Литералы с плавающей точкой. Размеры Тпп чоЫ Перечисления.. Объявления. 4,9.1. Структура объявления ...
76 77 78 80 .81 81 82 ........ 8 2 83 84 85 86 88 .88 89 90 91 92 .93 94 95 96 98 ........ 99 „,... 100 . 101 . 101 . 101 ...... 1 02 . 1 02 . 1 03 105 . 107 .. 107 .108 .109 ...109 .111 .111 ..111 .... 112 . 112 ..... 1 1 3 . 1 1 4 ...... 1 1 5 1 1 6 ...... 1 1 8 Оглавление 4 9.2.
Объявление ~ескольк х имен. 4.9.3. Имена . 4.9.4. Область видимости . 4.9.5. Инициализация .. 4.9.6. Объекты и!ча1це. 4.9.7. <уре<1е1 ..., 4.10. Советы 4.11. Упражнения. Глава 5. Указатели, массивы и структуры .. Глава 6. Выражения и инструкции 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 6.1 6.2 6.3 Указатели 5.1.1. Ноль. Массивы 5.2.1. Инициализаторы массивов . 5 2.2.
Строковые литералы Указатели па массивы .. 5.3.1. Доступ к злементам л<ассива Константы . 5.4.1. Указатели и константы Ссылки Указатель на чоЫ Структуры . 5.7.1. Эквивалентность типов Советы . Упражнения Калькулятор,. 6.1.1. Синтаксический анализатор...... 6.1.2. Функция ввола 6.1,3. Низкоуровневый ввод 6.1.4. Обработка ошибок.....,............... 6.1.5. Драйвер ... 6.1.6. Заголовочные файлы 6,1.7. Параметры командной строки 6.1.8.
Замечание о стиле Обзор операторов. 6.2.1. Результаты . 6.2.2. Последовательность вычислений . 6.2.3. Приоритет операторов., 6,2.4. Побитовые логические операторы .. 6.2.5. Инкремент и декремент 6.2.6. Свободная память 6.2.6.1. Маг< ивы . 6.2.6.2. Отсутствие памяти .. 6.2.7. Явное преобразование типов. 6.2.8. Конструкторы.
Инструкции . 6.3.1. Объявления в качестве инструкций ... 6.3.2. Инструкции выбора... ...... 119 119 120 ...,.. 1 2 2 1 2 3 ...... 123 124 125 ... 127 127 128 128 129 130 131 132 134 136 137 ..... 140 141 144 ....... 1 4 4 1 4 5 . 1 47 1 4 7 1 4 8 1 5 2 1 5 5 1 5 6 1 5 6 1 5 7 1 58 . 1 60 1 6 0 1 62 ..... 163 164 165 166 168 .. 169 ....170 171 ...... 173 .....
Характеристики
Тип файла DJVU
Этот формат был создан для хранения отсканированных страниц книг в большом количестве. DJVU отлично справился с поставленной задачей, но увеличение места на всех устройствах позволили использовать вместо этого формата всё тот же PDF, хоть PDF занимает заметно больше места.
Даже здесь на студизбе мы конвертируем все файлы DJVU в PDF, чтобы Вам не пришлось думать о том, какой программой открыть ту или иную книгу.