Выбрать главу

Глава 24 Числа

  24.1. Введение

  24.2. Размер, точность и переполнение

   24.2.1. Пределы числовых диапазонов

  24.3. Массивы

  24.4. Многомерные массивы в стиле языка С

  24.5. Библиотека Matrix

   24.5.1. Размерности и доступ

   24.5.2. Одномерный объект класса Matrix

   24.5.3. Двумерный объект класса Matrix

   24.5.4. Ввод-вывод объектов класса Matrix

   24.5.5. Трехмерный объект класса Matrix

  24.6. Пример: решение систем линейных уравнений

   24.6.1. Классическое исключение Гаусса

   24.6.2. Выбор ведущего элемента

   24.6.3. Тестирование

  24.7. Случайные числа

  24.8. Стандартные математические функции

  24.9. Комплексные числа

  24.10. Ссылки

Глава 25 Программирование встроенных систем

  25.1. Встроенные системы

  25.2. Основные понятия

   25.2.1. Предсказуемость

   25.2.2. Принципы

   25.2.3. Сохранение работоспособности после сбоя

  25.3. Управление памятью

   25.3.1. Проблемы со свободной памятью

   25.3.2. Альтернатива универсальной свободной памяти

   25.3.3. Пример пула

   25.3.4. Пример стека

  25.4. Адреса, указатели и массивы

   25.4.1. Непроверяемые преобразования

   25.4.2. Проблема: дисфункциональный интерфейс

   25.4.3. Решение: интерфейсный класс

   25.4.4. Наследование и контейнеры

  25.5. Биты, байты и слова

   25.5.1. Операции с битами и байтами

   25.5.2. Класс bitset

   25.5.3. Целые числа со знаком и без знака

   25.5.4. Манипулирование битами

   25.5.5. Битовые поля

   25.5.6. Пример: простое шифрование

  25.6. Стандарты программирования

   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. Свойства языка С++, которых нет в языке С