Элджер Дж.5-8046-0045-1, 0-12-049942-8
Table of contents :
Содержание……Page 3
Извинения… или вроде того……Page 9
Часть 1. Введение и краткий обзор……Page 11
Дао C++……Page 13
Три великие идеи C++……Page 15
Как читать эту книгу……Page 16
Несколько слов о стиле программирования……Page 17
const……Page 19
Стековые и динамические объекты……Page 23
Области действия……Page 25
Перегрузка……Page 28
Видимость……Page 29
Конструкторы……Page 33
Деструкторы……Page 40
Присваивание……Page 41
Перегрузка операторов……Page 46
Проблемы……Page 55
Шаблоны – усовершенствованные макросы……Page 56
Параметризованные функции……Page 57
Передача параметра……Page 58
Комбинации простых и параметризованных типов……Page 59
Небезопасные типы в переменных класса……Page 60
Синтаксис инициирования исключений……Page 63
Синтаксис перехвата исключений……Page 66
Конструкторы и деструкторы……Page 67
Условные обозначения……Page 69
Часть 2. Косвенные обращения……Page 71
Глупые указатели……Page 73
Параметризованные умные указатели……Page 75
Иерархия умных указателей……Page 76
Арифметические операции с указателями……Page 77
Разыменование значения NULL……Page 78
Отладка и трассировка……Page 80
Кэширование……Page 82
Семантика ведущих указателей……Page 85
Конструирование……Page 86
Копирование……Page 87
Присваивание……Page 88
Прототип шаблона ведущего указателя……Page 89
Подсчет объектов……Page 90
Указатели для чтения/записи……Page 92
Дублирование интерфейса……Page 93
Маскировка указываемого объекта……Page 94
Грани……Page 96
Преобразование указываемого объекта в грань……Page 97
Кристаллы……Page 98
Вариации на тему граней……Page 99
Инкапсуляция указываемого объекта……Page 102
Обеспечение согласованности……Page 103
Грани и ведущие указатели……Page 105
Полиморфные указываемые объекты……Page 106
Посредники……Page 107
Функторы……Page 108
Проверка границ и присваивание……Page 111
Имитация многомерных массивов……Page 112
Виртуальный оператор []……Page 113
Простой класс разреженного массива……Page 114
Курсоры и разреженные массивы……Page 115
Операторы преобразования и оператор ->……Page 116
Итераторы……Page 117
Пассивные итераторы……Page 118
Убогие, но распространенные варианты……Page 119
Лучшие варианты……Page 120
Итератор абстрактного массива……Page 121
Операторы коллекций……Page 123
Мудрые курсоры и надежность итераторов……Page 124
Частные копии коллекций……Page 126
Внутренние и внешние итераторы……Page 127
Временная пометка……Page 129
Пример……Page 131
Транзакции……Page 137
Образы и указатели……Page 138
Простой указатель образов……Page 139
Стеки образов……Page 140
Образы автоматических объектов……Page 141
Образы указателей……Page 144
Транзакции и отмена……Page 145
Транзакции и блокировки……Page 146
Класс ConstPtr……Page 147
Класс LockPtr……Page 149
Создание и уничтожение объектов……Page 150
Упрощенное создание объектов……Page 151
Вложенные блокировки……Page 152
Взаимные блокировки и очереди……Page 153
Оптимизация объема……Page 154
Несколько прощальных слов……Page 155
Часть 3. Снова о типах……Page 157
Гомоморфные иерархии классов……Page 159
Нормальное наследование……Page 160
Инкапсуляция производных классов……Page 161
Множественная передача……Page 162
Двойная передача……Page 163
Гетероморфная двойная передача……Page 164
Передача более высокого порядка……Page 165
Группировка передач и преобразования……Page 166
Это еще не все……Page 167
Производящие функции……Page 169
Оптимизация с применением производящих функций……Page 170
Локализованное использование производящих функций……Page 171
Снова о двойной передаче: промежуточные базовые классы……Page 172
Объекты классов……Page 173
Информация о классе……Page 174
Еще несколько слов об уничтожающих функциях……Page 175
Определение класса по объекту……Page 176
Представители……Page 177
Основные концепции……Page 179
Производящие функции……Page 180
Неведущие указатели……Page 181
Ведущие указатели……Page 183
Снова о двойной передаче……Page 184
Удвоенная двойная передача……Page 185
Самомодификация и переходимость……Page 187
Нетривиальные распределенные архитектуры……Page 189
Часть 4. Управление памятью……Page 191
Простой список свободной памяти……Page 193
Наследование операторов new и delete……Page 196
Конструирование с разделением фаз……Page 197
Уничтожение с разделением фаз……Page 198
Глобальное управление……Page 199
Управление памятью с применением ведущих указателей……Page 200
Перспективы……Page 204
Поблочное освобождение памяти……Page 205
Списки свободных потоков……Page 208
Базовый класс с подсчетом ссылок……Page 210
Ведущие указатели с подсчетом ссылок……Page 211
Дескрипторы с подсчетом ссылок……Page 212
Подсчет ссылок и ведущие указатели……Page 213
Деление по классам……Page 214
Деление по средствам доступа……Page 215
Пространства стека и кучи……Page 216
Мама, откуда берутся указатели?……Page 217
Поиск указателей……Page 220
Ведущие указатели……Page 223
Вариации……Page 227
Пространства объектов……Page 229
Последовательное копирование……Page 232
Внешние объекты……Page 233
Алгоритм Бейкера: уход и кормление в C++……Page 234
Базовый класс VoidPtr……Page 236
Пул ведущих указателей……Page 237
Алгоритм уплотнения……Page 238
Перспективы……Page 239
Периметр……Page 241
Внутри периметра……Page 242
Анализ экземпляров……Page 243
Перебор графа объектов……Page 244
Шаблон сильного дескриптора……Page 245
Итераторы ведущих указателей……Page 246
Перебор указателей……Page 248
Сборка мусора и уплотнение на месте……Page 251
Концепции “матери всех объектов”……Page 252
Организация памяти……Page 253
Перебор внутри периметра……Page 254
Итоговые перспективы……Page 255
Приложение. Java против C++……Page 257
Reviews
There are no reviews yet.