Главная    Ex Libris    Книги    Журналы    Статьи    Серии    Каталог    Wanted    Загрузка    ХудЛит    Справка    Поиск по индексам    Поиск    Форум   
blank
Авторизация

       
blank
Поиск по указателям

blank
blank
blank
Красота
blank
Мэйерс С. — Эффективное использование C++. 55 верных советов улучшить структуру и код ваших программ
Мэйерс С. — Эффективное использование C++. 55 верных советов улучшить структуру и код ваших программ



Обсудите книгу на научном форуме



Нашли опечатку?
Выделите ее мышкой и нажмите Ctrl+Enter


Название: Эффективное использование C++. 55 верных советов улучшить структуру и код ваших программ

Автор: Мэйерс С.

Аннотация:

Эта книга представляет собой перевод третьего издания американского бестселлера Effective C++ и является руководством по грамотному использованию языка C++. Она поможет сделать ваши программы более понятными, простыми в сопровождении и эффективными. Помимо материала, описывающего общую стратегию проектирования, книга включает в себя главы по программированию с применением шаблонов и по управлению ресурсами, а также множество советов, которые позволят усовершенствовать ваши программы и сделать работу более интересной и творческой. Книга также включает новый материал по принципам обработки исключений, паттернам проектирования и библиотечным средствам.

Издание ориентировано на программистов, знакомых с основами C++ и имеющих навыки его практического применения.


Язык: ru

Рубрика: Computer science/

Статус предметного указателя: Готов указатель с номерами страниц

ed2k: ed2k stats

Год издания: 2006

Количество страниц: 300

Добавлена в каталог: 06.03.2008

Операции: Положить на полку | Скопировать ссылку для форума | Скопировать ID
blank
Предметный указатель
Ли, Грег      13
Ли, Дуг      12
Ли, Сэм      13
Логические константные функции-члены      36
Локальные статические объекты, инициализация      45
Локальные статические объекты, определение      43
Манис, Винсент      13
Мартин, Алекс      13
Массив, неправильный индекс      22
Математика, и наследование      158
Математические и числовые утилиты в Boost      267
Математические функции в TR1      262
Межъязыковая поддержка, в Boost      267
Мейерс, Скотт, Web-сайт      16
Мейерс, Скотт, список рассылки      16
Месть компиляторов      69
Метапрограммирование шаблонов      231—236
Метапрограммирование шаблонов, поддержка в Boost      266—267
Метапрограммирование шаблонов, поддержка в TR1      262—263
Метапрограммирование шаблонов, реализации паттернов      236
Метапрограммирование шаблонов, эффективность      232
Метапрограммирование шаблонов, «Hello World»      234
Метод шаблонный      172—173
Метод, final из Java      191
Метод, sealed, в C#      191
Мидовбрук, Криста      14
Микельсен, Дениз      14
Минимизация зависимостей на этапе компиляции      144—152
Миттал, Нишант      13
Михаелс, Лаура      13
Михан, Джим      13
Многопоточность, не константные статические объекты      46
Многопоточность, процедуры управления памятью      237 250
Многопоточность, трактовка в этой книге      24
Множественное наследование      см. «Наследование»
Модель «реализовано посредством»      185—187
Модификация возвращаемых функциями значений      35
Морофф, Хал      13
Мур, Ванесса      14
Мьютексы, и RAII      77—78
Мэтьюс, Леон      13
Наглер, Эрик      12 13
Назначение закрытого наследования      188
Назначение композиции      185
Назначение не-виртуальных функций      170
Назначение обычных виртуальных функций      165
Назначение открытого наследования      154
Назначение передачи по значению      21—22
Назначение ссылок      98—99
Назначение чисто виртуальных функций      165
Наследование закрытое      188—193 214
Наследование закрытое и композиция      189
Наследование закрытое, для переопределения виртуальных функций      198
Наследование закрытое, значение      188
Наследование закрытое, избежание      190
Наследование закрытое, комбинированное с открытым      198
Наследование защищенное      155
Наследование и математика      158
Наследование интерфейса      164—171
Наследование интерфейса и реализации      164—171
Наследование комбинированное с шаблонами      242
Наследование множественное      193—199
Наследование множественное, комбинированное открытое и закрытое      198
Наследование множественное, неоднозначность      193
Наследование множественное, ромбовидное      194
Наследование открытое      153—159
Наследование открытое, виртуальное      195
Наследование открытое, комбинированное с закрытым      198
Наследование открытое, отношение «является»      154—159
Наследование открытое, семантика      154
Наследование открытое, сокрытие имен      162
Наследование разделение средств      167
Наследование реализации      164—171
Наследование случайное      168
Наследование смешанного стиля      242
Наследование, интуиция      155—158
Наследование, области видимости      159
Наследование, общие свойства      166
Наследование, оператор new      250—251
Наследование, переопределение не-виртуальных функций      179—181
Наследование, пингвины      155—157
Наследование, прямоугольники, Наследование, квадраты      157—158
Наследование, сокрытие имен      159—163
Наурот, Крис      13
Нахил, Джулия      14
Не-виртуальные идиомы интерфейса      см. «NVI»
Не-виртуальные функции      179—181
Не-виртуальные функции, статическое связывание      180
Неверный индекс массива, неопределенное поведение      22
Независимые имена      204
Неинициализированные данные-члены, и виртуальные функции      61
Неинициализированные значения, чтение      40
Неиспользуемые объекты, затраты на      119
Неиспользуемые объекты, исключения      120
Некорректный код и эффективность      98
Нелокальные статические объекты, инициализация      43
Необъявленный интерфейс      94
Неоднозначность, вложенные зависимые имена и типы      205
Неоднозначность, множественное наследование и неоднозначность      193
Неопределенное поведение, advance      230
Неопределенное поведение, исключения      57
Неопределенное поведение, использование более чем одного delete      73 244
Неопределенное поведение, неверный индекс массива      22
Неопределенное поведение, неинициализированные значения      40
Неопределенное поведение, нулевые указатели      22
Неопределенное поведение, определение      22
Неопределенное поведение, порядок инициализации      43—44
Неопределенное поведение, приведение + арифметика указателей      124
Неопределенное поведение, разрушенные объекты      99
Неопределенное поведение, удаление массивов      83
Неопределенное поведение, удаление объектов      53 55 84
Неопределенные значения членов перед конструированием и после уничтожения      61—62
Несоответствие с поведением встроенных типов      89
Неявно сгенерированные функции      47—50 220
Неявно сгенерированные функции, запрет      50—52
Неявные встроенные запросы      139
Неявные интерфейсы      200—203
Новые типы и проектирование интерфейса      88
Нулевой указатель, set_new_handler      239
Нулевой указатель, разыменование      22
Нулевой указатель, удаление      251
Нэнси      см. «Урбано Нэнси
Области видимости и наследование      159
Обобщенное присваивание      219
Обобщенные конструкторы копирования      219
Обработчик new      238—244
Обработчик new, деинсталляция      239
Обработчик new, идентификация      250
Обработчик new, определение      238
Общие свойства и наследование      166
Объектно-ориентированные принципы, и инкапсуляция      106
Объектно-ориентированный C++, как подъязык C++      27
Объекты, возвращает ссылки      98—102
Объекты, выравнивание      246—247
Объекты, группировка      248
Объекты, дескрипторы внутренних      128—131
Объекты, зависимости на этапе компиляции      147—148
Объекты, и переменные      19
Объекты, инициализация с аргументами и без      120
Объекты, копирование всех частей      68—71
Объекты, множество адресов      124
Объекты, объявление, откладывание      119—122
Объекты, определение      19
Объекты, определение размеров      145—146
Объекты, размер, передача по значению      97—98
Объекты, размещающий new, и интеллектуальные указатели      85—86
Объекты, размещение в разделяемой памяти      248
Объекты, схема распределения памяти для массивов      83
Объекты, управление ресурсами      72—76
Объекты, частичное копирование      69
Объявления      18—19
Объявления виртуальные и оператор delete      252
Объявления виртуальные и полиморфные базовые классы      52—56
Объявления виртуальные и функции      60—63
Объявления функций, const      33
Объявления, using и поиск имен      210—211
Объявления, using и сокрытие имен      162
Объявления, встроенных функций      140
Объявления, статических константных встроенных членов      29
Ограничения интерфейсов, при наследовании      93
Однонаправленные итераторы      226
Олдхам, Джефри Д.      13
Оператор DELETE      93 см.
Оператор delete, виртуальные деструкторы      252
Оператор delete, замена      244—249
Оператор delete, не-члены, псевдокод для      251
Оператор delete, поведение      251—252
Оператор delete, размещение      252—257
Оператор delete, сокрытие имен      256—257
Оператор delete, стандартные формы      256—257
Оператор delete, эффективность      245
Оператор delete[]      93
Оператор new      93 см.
Оператор new, bad_alloc      243 249
Оператор new, std::bad_alloc      243 249
Оператор new, бесконечный цикл внутри      250
Оператор new, возврат 0      243
Оператор new, замена      244—249
Оператор new, массивы      251
Оператор new, наследование      250—251
Оператор new, не-члены, псевдокод для      249
Оператор new, поведение      249—251
Оператор new, размещающий      252—257
Оператор new, сокрытие имен      255—256
Оператор new, стандартные формы      256—257
Оператор new, условия недостатка памяти      238—239 249—250
Оператор new, функции-обработчики new      238
Оператор new, член и запросы неверного размера      251
Оператор new, эффективность      245
Оператор new[]      93 251
Оператор присваивания, код в конструкторах копирования      71
Оператор присваивания, копирование      21
Оператор присваивания, производные классы      70
Операции с матрицами, оптимизация      235—236
Операции, изменение порядка компиляторами      85
Опережающие функции      148
Описатели типов, в TR1      262—263
Определения      19
Определения классов      19
Определения классов, исключение неестественной зависимости клиента от определений типов      147
Определения классов, объявление класса, против      147
Определения классов, размеры объектов      145—146
Определения неявно сгенерированных функций      48
Определения объектов      19
Определения переменных, откладывание      119—122
Определения сознательное исключение      51
Определения статических константных встроенных членов      29
Определения функций      19
Определения чисто виртуальных функций      165 169
Определения шаблонов      19
Определения, замена объявлениями      147
Оптимизация компиляторами      101—102
Оптимизация пустых базовых классов (EBO)      192
Оптимизация, logic_error      119
Оптимизация, во время компиляции      139
Оптимизация, встроенные функции      139
Оптимизация, организация заголовков      108
Оптимизация, шаблон list      187
Оптимизация, шаблон set      187
Оптимизация, шаблон vector      84
Открытое наследование      см. «Наследование»
Отладчики, #define      28
Отладчики, встроенные функции      143
Отложенное объявление переменных      119—122
Отношение «реализован посредством»      185—186 188
Отношение «содержит»      185
Отношение «является»      153—159
Ошибки в книге, сообщения о них      16
Ошибки времени исполнения      156
Ошибки времени компоновки      51 56
Пал, Балог      13
Параметры      см. также «Передача по значению передача передача
Параметры, не являющиеся типами      213
Параметры, не являющиеся типами, для шаблонов      213
Параметры, по умолчанию      181—185
Параметры, по умолчанию, влияние измененных      184
Параметры, по умолчанию, статическое связывание      182
Параметры, порядок вычисления      85—86
Параметры, преобразования типа      см. «Преобразования типа»
Паттерны проектирования, генерация из шаблонов      236
Паттерны проектирования, инкапсуляция      175
Паттерны проектирования, курьезные рекурсивные шаблонные (CRTP)      243
Паттерны проектирования, раздельное размещение (Singleton)      45
Паттерны проектирования, Стратегия      173—179
Паттерны проектирования, ТМР      236
Паттерны проектирования, Шаблонный метод      172—173
Педерсен, Роджер П.      13
Перегрузка, std::swap      115
Перегрузка, как if...else для типов      229
Перегрузка, константность      34
Передача владения      79
Передача по значению      21—22
Передача по значению и передача по ссылке на const      94—98
Передача по значению, конструкторы копирования      21—22
Передача по значению, размеры объекта      97
Передача по значению, эффективность      94—95
Переменные и объекты      19
Переопределение унаследованных не виртуальных функций      179—181
Пессимизация      101
Побочные эффекты, и безопасность исключений      137
Поврежденные структуры данных, безопасный относительно исключений код      132
Повторное использование      см. «Повторное использование кода»
Поддержка обобщенного программирования в Boost      266
Позднее связывание      182
Поиск имен, this      210 214
Поиск имен, объявление using      210—211
Полиморфизм      200—202
Полиморфизм времени исполнения      202
Полиморфизм времени компиляции      202
Полиморфные базовые классы, деструкторы      52—56
Полная специализация, std::swap      115
Полная специализация, шаблона      114
Полная специализация, шаблонного класса      209
Получение Ресурса Есть Инициализация      см. «RAII»
Порядок инициализации не-локальных статических объектов      43—46
Порядок инициализации членов класса      43
Порядок инициализации, важность      43
Пошаговая инструкция встраивания      143
Правило      80—20 143 170—171
Прасерцит, Чути      14
Предварительные условия, NVI      173
Предупреждения компилятора      258—259
Предупреждения компилятора, встраивание      141
Предупреждения компилятора, вызовы виртуальных функций      62
Предупреждения компилятора, частичное копирование      69
Преобразование типов      93—94 111
Преобразование типов, explicit—конструкторы      20—21
Преобразование типов, закрытое наследование      188
Преобразование типов, интеллектуальные указатели      217—221
Преобразование типов, функции не-члены      109—112 221—225
Преобразование типов, шаблоны      221—225
Преобразование типов, явная и неявная      80—82
Преобразование типов, явное      111
Приведения      122—128 см. «static_cast» «dynamic_cast»
Приведения в новом стиле      122
Приведения в старом стиле      122
Приведения в стиле C      122
Приведения, grep      123
Приведения, вызовы базовых классов      124
Приведения, неопределенное поведение      122
1 2 3 4 5
blank
Реклама
blank
blank
HR
@Mail.ru
       © Электронная библиотека попечительского совета мехмата МГУ, 2004-2024
Электронная библиотека мехмата МГУ | Valid HTML 4.01! | Valid CSS! О проекте