وبلاگ بلیان

C++

معرفی کتاب «C++» نوشتهٔ Джефф Элджер، منتشرشده توسط نشر Библиотека программиста. این کتاب در فرمت pdf، زبان ru ارائه شده است. «C++» در دستهٔ بدون دسته‌بندی قرار دارد.

C++: Библиотека программиста НАУКА и УЧЕБА, ПРОГРАММИНГ Название: C++: Библиотека программистаАвтор: Джефф ЭлджерФормат: pdfКачество: отличноеРазмер: 1,7Mb Искусство программирования на С++ отнюдь не сводится к знанию синтаксиса языка. Хорошая программа доставляет удовольствие - она проста и изящна одновременно. Однако переход от среднего, `ремесленного` уровня владения С++ к высотам мастерства практически не освещается в литературе. Большинство программистов действуют методом проб и ошибок, самостоятельно находя давно придуманные решения. Автор, программист с 20 - летним стажем, пытается запомнить этот досадный пробел. Он описывает множество полезных приемов, условно разделенных на три большие темы: нетривиальное использование указателей, иерархии классов и управление памятью. Досконально разобраны и другие полезные темы, в числе которых - создание шаблонов, обработка исключений и оптимизация программ. В книге рассматривается эталонный стандарт ANSI, не связанный ни с каким конкретным компилятором или визуальной средой. Книга ориентирована на программистов, обладающих опытом программирования на С++.СкачатьЗеркалоВ моём профиле на сайте, Вы найдёте ещё множество книг по программированию, а также полезные и интересные книги по другим дисциплинам. Просмотр 68 Содержание......Page 2 Извинения... или вроде того......Page 8 Часть 1. Введение и краткий обзор......Page 10 Дао C++......Page 12 Три великие идеи C++......Page 14 Как читать эту книгу......Page 15 Несколько слов о стиле программирования......Page 16 const......Page 18 Стековые и динамические объекты......Page 22 Области действия......Page 24 Перегрузка......Page 27 Видимость......Page 28 Конструкторы......Page 32 Деструкторы......Page 39 Присваивание......Page 40 Перегрузка операторов......Page 45 Проблемы......Page 54 Шаблоны - усовершенствованные макросы......Page 55 Параметризованные функции......Page 56 Передача параметра......Page 57 Комбинации простых и параметризованных типов......Page 58 Небезопасные типы в переменных класса......Page 59 Синтаксис инициирования исключений......Page 62 Синтаксис перехвата исключений......Page 65 Конструкторы и деструкторы......Page 66 Условные обозначения......Page 68 Часть 2. Косвенные обращения......Page 70 Глупые указатели......Page 72 Параметризованные умные указатели......Page 74 Иерархия умных указателей......Page 75 Арифметические операции с указателями......Page 76 Разыменование значения NULL......Page 77 Отладка и трассировка......Page 79 Кэширование......Page 81 Семантика ведущих указателей......Page 84 Конструирование......Page 85 Копирование......Page 86 Присваивание......Page 87 Прототип шаблона ведущего указателя......Page 88 Подсчет объектов......Page 89 Указатели для чтения/записи......Page 91 Дублирование интерфейса......Page 92 Маскировка указываемого объекта......Page 93 Грани......Page 95 Преобразование указываемого объекта в грань......Page 96 Кристаллы......Page 97 Вариации на тему граней......Page 98 Инкапсуляция указываемого объекта......Page 101 Обеспечение согласованности......Page 102 Грани и ведущие указатели......Page 104 Полиморфные указываемые объекты......Page 105 Посредники......Page 106 Функторы......Page 107 Проверка границ и присваивание......Page 110 Имитация многомерных массивов......Page 111 Виртуальный оператор []......Page 112 Простой класс разреженного массива......Page 113 Курсоры и разреженные массивы......Page 114 Операторы преобразования и оператор ->......Page 115 Итераторы......Page 116 Пассивные итераторы......Page 117 Убогие, но распространенные варианты......Page 118 Лучшие варианты......Page 119 Итератор абстрактного массива......Page 120 Операторы коллекций......Page 122 Мудрые курсоры и надежность итераторов......Page 123 Частные копии коллекций......Page 125 Внутренние и внешние итераторы......Page 126 Временная пометка......Page 128 Пример......Page 130 Транзакции......Page 136 Образы и указатели......Page 137 Простой указатель образов......Page 138 Стеки образов......Page 139 Образы автоматических объектов......Page 140 Образы указателей......Page 143 Транзакции и отмена......Page 144 Транзакции и блокировки......Page 145 Класс ConstPtr......Page 146 Класс LockPtr......Page 148 Создание и уничтожение объектов......Page 149 Упрощенное создание объектов......Page 150 Вложенные блокировки......Page 151 Взаимные блокировки и очереди......Page 152 Оптимизация объема......Page 153 Несколько прощальных слов......Page 154 Часть 3. Снова о типах......Page 156 Гомоморфные иерархии классов......Page 158 Нормальное наследование......Page 159 Инкапсуляция производных классов......Page 160 Множественная передача......Page 161 Двойная передача......Page 162 Гетероморфная двойная передача......Page 163 Передача более высокого порядка......Page 164 Группировка передач и преобразования......Page 165 Это еще не все......Page 166 Производящие функции......Page 168 Оптимизация с применением производящих функций......Page 169 Локализованное использование производящих функций......Page 170 Снова о двойной передаче: промежуточные базовые классы......Page 171 Объекты классов......Page 172 Информация о классе......Page 173 Еще несколько слов об уничтожающих функциях......Page 174 Определение класса по объекту......Page 175 Представители......Page 176 Основные концепции......Page 178 Производящие функции......Page 179 Неведущие указатели......Page 180 Ведущие указатели......Page 182 Снова о двойной передаче......Page 183 Удвоенная двойная передача......Page 184 Самомодификация и переходимость......Page 186 Нетривиальные распределенные архитектуры......Page 188 Часть 4. Управление памятью......Page 190 Простой список свободной памяти......Page 192 Наследование операторов new и delete......Page 195 Конструирование с разделением фаз......Page 196 Уничтожение с разделением фаз......Page 197 Глобальное управление......Page 198 Управление памятью с применением ведущих указателей......Page 199 Перспективы......Page 203 Поблочное освобождение памяти......Page 204 Списки свободных потоков......Page 207 Базовый класс с подсчетом ссылок......Page 209 Ведущие указатели с подсчетом ссылок......Page 210 Дескрипторы с подсчетом ссылок......Page 211 Подсчет ссылок и ведущие указатели......Page 212 Деление по классам......Page 213 Деление по средствам доступа......Page 214 Пространства стека и кучи......Page 215 Мама, откуда берутся указатели?......Page 216 Поиск указателей......Page 219 Ведущие указатели......Page 222 Вариации......Page 226 Пространства объектов......Page 228 Последовательное копирование......Page 231 Внешние объекты......Page 232 Алгоритм Бейкера: уход и кормление в C++......Page 233 Базовый класс VoidPtr......Page 235 Пул ведущих указателей......Page 236 Алгоритм уплотнения......Page 237 Перспективы......Page 238 Периметр......Page 240 Внутри периметра......Page 241 Анализ экземпляров......Page 242 Перебор графа объектов......Page 243 Шаблон сильного дескриптора......Page 244 Итераторы ведущих указателей......Page 245 Перебор указателей......Page 247 Сборка мусора и уплотнение на месте......Page 250 Концепции "матери всех объектов"......Page 251 Организация памяти......Page 252 Перебор внутри периметра......Page 253 Итоговые перспективы......Page 254 Приложение. Java против C++......Page 256
دانلود کتاب C++