Программирование. Принципы и практика использования C++ Исправленное издание
Шрифт:
25.6.1. Каким должен быть стандарт программирования?
25.6.2. Примеры правил
25.6.3. Реальные стандарты программирования
Глава 26 Тестирование
26.1. Чего мы хотим
26.1.1. Предостережение
26.2. Доказательства
26.3. Тестирование
26.3.1.
26.3.2. Модульные тесты
26.3.2.1. Стратегия тестирования
26.3.2.2. Схема простого теста
26.3.2.3. Случайные последовательности
26.3.3. Алгоритмы и не алгоритмы
26.3.3.1. Зависимости
26.3.3.2. Управление ресурсами
26.3.3.3. Циклы
26.3.3.4. Ветвление
26.3.4. Системные тесты
26.3.4.1. Зависимости
26.3.5. Тестирование классов
26.3.6. Поиск предположений, которые не выполняются
26.4. Проектирование с учетом тестирования
26.5. Отладка
26.6. Производительность
26.6.1. Измерение времени
26.7. Ссылки
Глава 27 Язык программирования С
27.1. Языки С и С++: братья
27.1.1. Совместимость языков С и С++
27.1.2. Свойства языка С++, которых нет в языке С
27.1.3. Стандартная библиотека языка С
27.2. Функции
27.2.1. Отсутствие перегрузки имен функций
27.2.2. Проверка типов аргументов функций
27.2.3. Определения функций
27.2.4. Вызов функций, написанных на языке С, из программы на языке С++, и наоборот
27.2.5. Указатели на функции
27.3. Второстепенные языковые различия
27.3.1. Дескриптор пространства имен struct
27.3.2. Ключевые слова
27.3.3. Определения
27.3.4. Приведение типов в стиле языка С
27.3.5.
Преобразование указателей типа void*27.3.6. Перечисление
27.3.7. Пространства имен
27.4. Свободная память
27.5. Строки в стиле языка С
27.5.1. Строки в стиле языка С и ключевое слово const
27.5.2. Операции над байтами
27.5.3. Пример: функция strcpy
27.5.4. Вопросы стиля
27.6. Ввод-вывод: заголовок stdio
27.6.1. Вывод
27.6.2. Ввод
27.6.3. Файлы
27.7. Константы и макросы
27.8. Макросы
27.8.1. Макросы, похожие на функции
27.8.2. Синтаксис макросов
27.8.3. Условная компиляция
27.9. Пример: интрузивные контейнеры
Часть V Приложения
Приложение А Краткий обзор языка
A.1. Общие сведения
A.1.1. Терминология
A.1.2. Старт и завершение программы
A.1.3. Комментарии
A.2. Литералы
A.2.1. Целочисленные литералы
A.2.1.1. Числовые системы
A.2.2. Литералы с плавающей точкой
A.2.3. Булевы литералы
A.2.4. Символьные литералы
A.2.5. Строковые литералы
A.2.6. Указательные литералы
A.3. Идентификаторы
A.3.1. Указательные литералы
A.4. Область видимости, класс памяти и время жизни
A.4.1. Область видимости
A.4.2. Класс памяти
A.4.3. Время жизни
A.5. Выражения
A.5.1. Операторы, определенные пользователем
A.5.2. Неявное преобразование типа