Оглавление Предисловие 1
ЧАСТЬ I. ПРОСТЕЙШАЯ ПРОГРАММА НА ЯЗЫКЕ C++ 5
Глава 1. Подготовка программы к исполнению 7
Глава 2. Среда программирования 9
Глава 3. Создание консольного приложения 13
Запуск MVC++ 13
Создание проекта в новой рабочей области 14
Открытие существующей рабочей области 16
Создание нового проекта в рабочей области 17
Активизация существующего проекта 19
Добавление исходных файлов в проект 19
Активизация исходного файла для редактирования 21
Сохранение и закрытие файла 22
Трансляция файлов реализации 22
Компоновка 24
Отладка приложения 25
Глава 4. Функция main ( ) 28
Глава 5. Вывод текста на экран 30
ЧАСТЬ II. ОСНОВЫ ЯЗЫКА C++ 33
Глава 6. Простые типы данных 35
Константы простых типов 37
Переменные простых типов 38
Локальные переменные 39
Глобальные переменные 40
Область видимости переменных 41
Глава 7. Ввод и вывод данных 43
Глава 8. Операции над операндами простых типов 46
Арифметические операции 46
Инкремент и декремент 47
Арифметические операции с присваиванием 48
Операции отношения 49
Логические операции 50
Глава 9. Операторы 52
Оператор-выражение 52
Составной оператор 52
Условный оператор if 53
Условный оператор if else 54
Оператор цикла while 55
Оператор цикла for 56
Оператор цикла do while 58
Оператор передачи управления continue 59
Оператор передачи управления break 60
Оператор-переключатель switch 61
Оператор возврата return 66
Тернарный оператор ?: 66
Оператор sizeof 67
Глава 10. Массивы 68
Операции над массивами 68
Одномерные массивы 69
Многомерные массивы 75
Символьные массивы 85
Глава 11. Указатели 89
Операции с указателями 91
Указатели и массивы 94
Операторы распределения памяти new и delete 103
Указатели и динамические массивы 107
Указатели и спецификатор const 109
Массивы указателей 111
Указатели на указатели 118
Глава 12. Структуры 121
Операции доступа к элементам структуры 121
Инициализация структур 124
Массивы структур 125
Глава 13. Функции 128
Прототип функции 128
Определение функции 129
Возвращаемое функцией значение 129
Вызов функции 129
Область видимости функции 130
Включение функций в проект приложения 130
Передача параметра по значению 131
Передача параметра по ссылке посредством указателя 131
Передача параметра по ссылке посредством ссылки 131
Параметры по умолчанию 132
Передача массива в качестве параметра функции 132
Примеры функций 133
Функции обработки символов 142
Основные функции обработки строк 147
Служебные функции преобразования строк 151
Перегрузка функций 160
Шаблонные функции 164
ЧАСТЬ III. КЛАССЫ 175
Глава 14. Объекты и классы 175
Спецификаторы доступа к членам класса 177
Объявление или спецификация класса 178
Реализация класса 179
Рекомендации по выбору имен 181
Объявление объекта класса 181
Доступ к членам объектов 182
Конструкторы класса 183
Деструктор 185
Вызов конструктора и деструктора 186
Указатель this 190
Статические данные класса 191
Статические методы класса 193
Константные методы класса 196
Класс string 203
Объектно-ориентированная модель системы 208
Глава 15. Композиция 211
Глава 16. Наследование 224
Одиночное наследование 226
Множественное наследование 241
Чистые виртуальные функции и абстрактные классы 249
Глава 17. Перегрузка операторов 256
Операторные функции-члены класса 257
Операторные функции-друзья класса 270
Перегрузка операторов в производных классах 285
Глава 18. Шаблон классов 293
Объявление шаблона классов 294
Объявление объектов шаблона классов 297
Пример программы с простым шаблоном 298
Параметры по умолчанию в шаблоне классов 303
Наследование и шаблоны классов 306
Использование шаблонов 312
ЧАСТЬ IV. ВВОД-ВЫВОД И ИСКЛЮЧЕНИЯ 335
Глава 19. Основы ввода-вывода 337
Классификация способов ввода-вывода 337
Принципы работы с потоками и файлами 339
Стандартные классы потоков 341
Форматированный ввод-вывод базовых типов 345
Манипуляторы 350
Анализ состояния потока 353
Глава 20. Дополнительные возможности ввода-вывода 356
Форматированный ввод-вывод пользовательских типов 356
Файловый ввод-вывод 358
Неформатированный ввод-вывод 361
Обмены со строкой в памяти 365
Ввод-вывод с помощью библиотеки ANSI C 366
Глава 21. Обработка исключений 381
Основы обработки исключений 381
Управление обработкой исключений 385
ЧАСТЬ V. ПРИЛОЖЕНИЯ API 391
Глава 22. Характеристика приложений API Windows 393
Варианты приложений Windows 393
Графический интерфейс приложений Windows 394
Контекст устройства 395
Состав приложения. Функция WinMain 396
Оконная процедура обработки сообщений 401
Пример заготовки приложения 404
Шаги создания приложения API 408
Глава 23. Разработка интерфейса приложения 410
Создание меню 410
Создание диалогового окна 412
Элементы управления 416
Пример задания оконных процедур 420
ЧАСТЬ VI. ПРИЛОЖЕНИЯ MFC 425
Глава 24. Характеристика приложений MFC 427
Библиотека MFC 427
Этапы создания приложения MFC 428
Типы и состав приложений MFC 429
Глава 25. Обработка сообщений 434
Карты сообщений 434
Макросы карт сообщений 436
Типы передаваемых сообщений 437
Глава 26. Разработка интерфейса приложения 439
Общая характеристика интерфейса приложения 439
Создание диалогового окна 439
Создание класса окна 440
Доступ к элементам управления окна 441
Вывод текста в диалоговое окно 447
Глава 27. Ввод-вывод с помощью класса CFile 452
Создание объекта класса CFile 452
Открытие и создание файлов 452
Чтение и запись файлов 454
Список литературы 459
ПРИЛОЖЕНИЯ 461
Приложение 1. Контрольные вопросы и задания 463
Вопросы и задания к первой части 463
Вопросы и задания ко второй части 464
Вопросы и задания к третьей части 468
Вопросы и задания к четвертой части 471
Вопросы и задания к пятой части 472
Вопросы и задания к шестой части 474
Приложение 2
. Пример разработки консольного приложения MVC++ 477
Методические указания для разработки 477
Общая структура приложения 480
Особенности реализации класса CAuto 481
Класс CCmdMenu 483
Классы для организации работы с индексом CIndex и CKey 484
Класс CBinaryFile 484
Класс управления CControl 485
Пример консольного приложения MVC++ по файловому вводу-выводу 486
Приложение 3. Описание компакт-диска 505
Предметный указатель 507
VIII Оглавление VII Оглавление