|
Программирование >> Инициализация объектов класса, структура
область видимости, 376-81 видимость класса, 645-52 и определение класса, 594 разрешение имен в, 649-52 глобальная область видимости, 376 и время жизни (глава), 376-428 и перегрузка, 434-38 локальная область видимости, 378-81 обращение к скрытым членам глобальной области видимости, 411 разрешение имен в, 379 объявлений исключений в catch- обработчиках, 540 параметра шаблона функции, 478-81 пространства имен, 376 управляющих переменных в инструкции for, область видимости глобального пространства имен, 376, 406 доступ к скрытым членам с помощью оператора разрешения области видимости, обобщенные алгоритмы (глава), 552-92 algorithm, заголовочный файл, 584 numeric, заголовочный файл, 584 алфавитный указатель (приложение), 110394 генерирования, 586 использование итераторов, 575-83 категории и описания, 583-87 когда не надо использовать, 587-92 модификации, 586 независимость от типа, 552, 553 нотация для диапазона элементов, 583 обзор, 552-56 объекты-функции как аргументы, 567 использование предопределенных объектов-функций, 569 перестановки, 586 подстановки, 585 пример использования, 556-66 работа с хипом, 587 сравнения, 586 удаления, 585 численные, 586 обработка исключений badalloc, исключение нехватки памяти, 393 обратная косая черта ( как escape-символ, 280 как префикс escape-последовательности, 77 обратные итераторы, 578 обход заполнение множества с помощью, 305 использование с контейнерами multimap и multiset, 309 множества, 306-7 невозможность обхода перечислений, 112 обход отображения, 303 отображения текста на вектор позиций, 298301 параллельный обход двух векторов, 296 объединение разновидность класса, 638-43 объект(ы) автоматические, 388-89 объявление с ключевым словом register, 389-90 глобальные и функции, 381-87 сравнение с параметрами и возвращаемыми значениями функций, 349-50 использование памяти, 82 локальные, 388-92 определение, 87 переменные как, 81 члены пространства имен, 407-8 объектное программирование, 593 объектно-ориентированное программирование проектирование (пример), 46-55 объекты-функции, 566-75 functional, заголовочный файл, 568 арифметические, 570 использование в обобщенных алгоритмах, источники, 568 логические, 572 предопределенные, 568-70 преимущества по сравнению с указателями на функции, 567 реализация, 573-75 сравнительные, 571 Объекты-функции адапторы функций для, 573 объявление инструкция, 14 объявления базового класса, виртуальное, 976-78 в части инициализации цикла for, 210 видимость имени, вводимого объявлением, дрей, в шаблоне класса, 815-21 и определение, 382-83 инструкция, 189-92 исключения, 538 класса bitset, 167 объектов, 169 класса, сравнение с определением, 600-601 локальность, 190 перегруженное оператора, 131 функции, 429 пространства имен, 407 сопоставление объявлений в разных файлах, указателя на функцию, 366 включение спецификации исключений в, функции, 322 задание аргументов по умолчанию, 341 как часть шаблона функции, 477 размещение в заголовочном файле, 385 функции-члена, перегруженное, 776-78 шаблона функции определение используемых имен, 516 связь с определением, 515 требования к размещению явных объявлений конкретизации, 497 явная специализация, 499 явной конкретизации шаблона класса, 837-38 шаблона функции, 497-98 одиночная кавычка ( ) как escape-последовательность, 77 однонаправленный итератор, 583 оператор меньше характеристики и синтаксис, 146 оператор ввода, 27 оператор вывода, 1045 перегрузка, 1069. См. cout. См. cout оператор вызова функции, 736-38 операторы встроенные (глава), 141-87, 141-87 sizeof, 159-62 арифметические, 142-45 бинарные, 141 декремента (--), 153-54 доступа к членам класса (. и ->), 607-8 запятая, 163 инкремента (++), 153-54 логические, 145-48 побитовые, 164-66 приоритеты, 171-74 равенства, 145-48 разрешения области видимости ( ), 410-12 составного присваивания, 152 сравнения, 145-48 перегруженные delete, 744-49 delete(), размещения, 751-53 delete[], 749-51 new, 744-49 new(), размещения, 751-53 new[], 749-51 взятия индекса ([]), 736 вопросы проектирования, 728-30 вызова функции (()), 736-38 вызова функции для объектов-функций, декремента (--), 740-44 доступа к членам (->), 738-40 имена, 727-28 инкремента (++), 740-44 объявленные как друзья, 730-33 присваивания (=), 733-35 с параметрами-ссылками, преимущества, члены и не-члены класса, 723-27 определения, 15 typedef, 126 базового класса, 871-75 иерархии классов, 862-69 исключений, как иерархий классов, 1013-14 класса, 594-601 сравнение с определением класса, 600-601 класса-диспетчера запросов (пример), 934-39 массива, 113 многомерных массивов, 116 множеств, 304-6 недопустимость размещения в заголовочном файле, 385 объекта, 382 объектов класса bitset, 169 объектов класса complex, 125 последовательных контейнеров, 256-61 производного класса, 876-78 пространств имен, 406-20 членов, 415-17 сравнение с объявлениями, 381-83 функции и локальная область видимости, 378 как часть шаблона функции, 477 шаблона класса, 791-800 разрешение имен в, 844-46 опции в командной строке, 356-65 отображения, 292-309 map, заголовочный файл, 293 заполнение, 293 невозможность переупорядочения, 587 недопустимость использования итераторов с произвольным доступом, 583 сравнение с множествами, 292 текста заполнение, 292-98 определение, 292-98 отрицатели как адапторы функций, 573 очереди, 315-16 queue, заголовочный файл, 315 size(), 315 top(), функция, 316 очереди с приоритетами, 315, 316 очередь с приоритетами, 315 size(), 315 top(), функция, 316 ошибки assert(), макрос, 226 бесконечная рекурсия, 351 в инструкции if, 193 в циклах, 197 зацикливание, 93 висячие указатели, 389 как избежать, 394 динамического выделения памяти, 395 итератор, использование, 226 компиляции, конфликты в области видимости using-объявления, 437 массив индекс за концом, 94 области видимости, подводные камни using- директивы, 426 оператор присваивания вместо оператора равенства, 100 порядка вычисления подвыражений, 142 проблема висячего else, 195 проблемы константных ссылок и указателей, проблемы побитовых операторов, 166 проблемы, связанные с глобальными объектами, 349 пропуска завершающего нуля в С-строке, 402 скобок при освобождении динамически выделенного массива, 402 редактора связей повторные определения, 386 смещения на единицу при доступе к массиву, фазы связывания при наличии объявления в нескольких файлах, 383 Ошибки конкретизации шаблона функции, 484 утечка, 35 параметр(ы) объявление, сравнение с объявлением исключений, 540 размер, важность для передачи по значению, списки параметров переменной длины, многоточие, 343 различия перегруженных функций, 431 ссылочные, 329-33 влияние на преобразования при разрешении перегрузки функции, 457 преимущества эффективности, 330, 540 ранжирование, 471 сравнение с параметрами-указателями, 333-35 шаблона использование указателей на константы, не являюшиеся типами, 476 являюшиеся типами, проверка, 325-26 параметры функций аргументы по умолчаниюю, 340-43 использования многоточия, 343-44 массивы, 335-39 при разрешении перегруженных функций, проверка типов, 325-26 списки параметров, 325 сравнение параметров указательного и ссылочного типов, 333-35 сравнение с глобальными объектами, 349-50 ссылки, 107, 329-33 использование для возврата нескольких значений, 197 на константы, 331 преимущества в эффективности, 330 сравнение с параметрами-указателями, 333-35 тип возвращаемого значения тип pair, 197 указатели, 329 указатели на функции, 370-73 переменные глобальные параметры и возвращаемые значения, 349-50 константные, 100 объявление как член пространства имен, 408 переносимость знак остатка, 143 перестановки, обобщенные алгоритмы, 589 перечисления, 110-13 основания для включения в язык, 110 расширение типа при разрешении перегрузки функции, 452 точное соответствие при разрешении перегрузки функции, 445 по умолчанию аргументы, 340-43 и виртуальные функции, 910-13 влияние на выбор устоявших функций, 472 и устоявшие функции, 472-73 конструктор, см. конструктор, 678-79 побитовый(е) оператор И (&), 164 оператор И с присваиванием (&=), 152, 164 оператор ИЛИ (!), 165 оператор ИСКЛЮЧАЮЩЕЕ ИЛИ (), 165 оператор НЕ (~), 164 оператор сдвига (<<,>>), 165 операторы, 164-66 поддержка в классе bitset, 170 повторное возбуждение исключения, 542-43 позиция разрешение аргумента по позиции в списке, поиск rfind(), 278 подстрок, 280 элементов множества, 306 отображения текста, 298-99 ПОО (правило одного определения), 382, 41618 последовательные контейнеры, 248-319 вставка элементов, 265 критерии выбора, 252 обобщенные алгоритмы, 269-70 определение, 256 перестановка элементов, 269 присваивание, 268 удаление элементов, 267 предостережения использование знакового бита в битовых векторах, 166 неопределенность порядка вычисления бинарных операторов сравнения, 147 опасности приведения типов, 178 подводные камни using-директивы, 426 возврата l-значение, 348 возврата ссылки на объект, 348 глобальные объекты, 349 приведения типов, 181 шаблона класса auto ptr, 399 представление влияние на расширение типа перечисления, память
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |