Файл: Pobegaylo_A._C_Cplus_dlya_studenta.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 13.12.2020

Просмотров: 4077

Скачиваний: 28

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

Оглавление 

7.3. Связывание идентификаторов..............................................................91

 

7.4. Спецификаторы классов памяти ..........................................................92

 

7.5. Структура программы ...........................................................................96

 

7.6. Функция 

main

 ........................................................................................97

 

Глава 8. Типы данных, определяемые программистом ....... 100

 

8.1. Введение ..............................................................................................100

 

8.2. Перечисления ......................................................................................101

 

8.3. Структуры ............................................................................................103

 

8.4. Объединения ........................................................................................107

 

8.5. Битовые поля .......................................................................................110

 

8.6. Передача структур в функции ............................................................111

 

8.7. Объявление 

typedef

 ..............................................................................114

 

8.8. Оператор 

sizeof

 ....................................................................................116

 

8.9. Сравнимые типы .................................................................................119

 

Глава 9. Директивы препроцессора .......................................... 122

 

9.1. Препроцессор ......................................................................................122

 

9.2. Директивы 

#define

 и 

#undef

 ................................................................123

 

9.3. Директивы 

#if

#elsif

#else

 и 

#endif

 ...................................................124

 

9.4. Директивы 

#ifdef

 и 

#ifndef

 ..................................................................126

 

9.5. Директива 

#include

 ..............................................................................127

 

9.6. Директивы 

#error

 ................................................................................129

 

9.7. Директива 

#line

 ...................................................................................129

 

9.8. Директива 

#pragma

 .............................................................................130

 

9.9. Пустая директива ................................................................................130

 

9.10. Оператор 

#

 .........................................................................................130

 

9.11. Оператор 

##

 .......................................................................................131

 

9.12. Предопределенные макрокоманды ..................................................132

 

ЧАСТЬ II. ЯЗЫК ПРОГРАММИРОВАНИЯ С++ ................. 133 

Глава 10. Дополнения к типам данных языка С .................... 135

 

10.1. Тип данных 

bool

 ................................................................................135

 

10.2. Тип данных 

wchar_t

 ..........................................................................135

 

10.3. Анонимные объединения .................................................................137

 

10.4. Ссылки ...............................................................................................138

 

10.5. Новые операторы явного преобразования типов ...........................140

 

10.6. Типизированные операторы распределения памяти ......................143

 


background image

Оглавление 

Глава 11. Дополнение к функциям языка C ........................... 146

 

11.1. Передача аргументов по умолчанию ...............................................146

 

11.2. Встроенные функции ........................................................................147

 

11.3. Передача аргументов и возврат значения через ссылки ................148

 

11.4. Перегрузка функций .........................................................................149

 

11.5. Искажение имен функций ................................................................153

 

Глава 12. Пространства имен..................................................... 155

 

12.1. Определение пространства имен .....................................................155

 

12.2. Анонимные пространства имен .......................................................156

 

12.3. Стандартное пространство имен......................................................157

 

12.4. Оператор разрешения области видимости ......................................157

 

12.5. Объявление 

using

 ..............................................................................160

 

12.6. Директива 

using

 .................................................................................161

 

12.7. Псевдонимы .......................................................................................162

 

12.8. Искажение имен переменных ..........................................................163

 

Глава 13. Обработка исключений ............................................. 165

 

13.1. Механизм обработки исключений ...................................................165

 

13.2. Обработка нескольких исключений ................................................169

 

13.3. Перехват всех исключений ...............................................................170

 

13.4. Вложенные исключения ...................................................................171

 

13.5. Реализация исключений ...................................................................174

 

13.6. Спецификация исключений ..............................................................175

 

Глава 14. Классы .......................................................................... 177

 

14.1. Введение ............................................................................................177

 

14.2. Определение класса ..........................................................................178

 

14.3. Объекты, доступ к членам класса ....................................................180

 

14.4. Указатель 

this

.....................................................................................181

 

14.5. Спецификаторы доступа к членам класса .......................................181

 

14.6. Друзья класса .....................................................................................183

 

14.7. Встроенные функции-члены класса ................................................187

 

14.8. Функции-члены класса с квалификаторами 

const

 и 

volatile

 ..........188

 

14.9. Данные-члены класса с квалификатором 

mutable

 ..........................190

 

14.10. Статические члены класса ..............................................................190

 

14.11. Указатели на нестатические члены класса....................................192

 

14.12. Вложенные классы ..........................................................................194

 

14.13. Локальные классы ...........................................................................196

 


background image

Оглавление 

Глава 15. Конструкторы и деструкторы .................................. 197

 

15.1. Конструктор класса ...........................................................................197

 

15.2. Список инициализации .....................................................................198

 

15.3. Конструктор по умолчанию .............................................................199

 

15.4. Конструктор копирования ................................................................200

 

15.5. Явный вызов конструкторов ............................................................202

 

15.6. Деструкторы ......................................................................................203

 

15.7. Исключения в деструкторах .............................................................205

 

Глава 16. Перегрузка операторов .............................................. 206

 

16.1. Общие правила ..................................................................................206

 

16.2. Унарные операторы ..........................................................................209

 

16.3. Оператор присваивания ....................................................................210

 

16.4. Составные операторы присваивания ...............................................212

 

16.5. Оператор индексирования 

[ ]

 ..........................................................213

 

16.6. Оператор вызова функции ................................................................214

 

16.7. Оператор доступа к членам класса ..................................................215

 

16.8. Операторы инкремента и декремента .............................................216

 

16.9. Бинарные операторы.........................................................................217

 

16.10. Перегрузка операторов 

>>

 и 

<<

 для ввода и вывода ..................218

 

16.11. Операторы преобразования типов (конвертеры) .........................219

 

16.12. Операторы 

new

 и 

delete

 ..................................................................219

 

Глава 17. Наследование классов ............................................... 222

 

17.1. Определение наследования ..............................................................222

 

17.2. Доступ к членам, наследуемым от базового класса .......................225

 

17.3. Конструкторы, деструкторы и наследование .................................226

 

17.4. Наследование и присваивание .........................................................229

 

17.5. Виртуальные функции ......................................................................230

 

17.6. Полиморфизм и позднее связывание ..............................................233

 

17.7. Передача аргументов по умолчанию в виртуальные функции......234

 

17.8. Виртуальные деструкторы ...............................................................235

 

17.9. Абстрактные классы .........................................................................236

 

17.10. Множественное наследование .......................................................238

 

17.11. Виртуальное наследование .............................................................239

 

Глава 18. Шаблоны функций ..................................................... 241

 

18.1. Определение шаблона функции .......................................................241

 

18.2. Конкретизация шаблона функции ...................................................243

 

18.3. Вывод аргументов шаблона функции .............................................246

 


background image

Оглавление 

18.4. Явная специализация шаблона функции .........................................249

 

18.5. Модели компиляции шаблонов ........................................................250

 

18.6. Перегрузка шаблонов функций ........................................................252

 

18.7. Шаблоны функций как члены класса ..............................................255

 

Глава 19. Шаблоны классов ....................................................... 257

 

19.1. Определение шаблона класса ...........................................................257

 

19.2. Конкретизация шаблона класса .......................................................259

 

19.3. Использование ключевого слова 

typename

 .....................................262

 

19.4. Явная специализация шаблона класса .............................................264

 

19.5. Частичная специализация шаблона класса .....................................265

 

19.6. Статические члены шаблона класса ................................................267

 

19.7. Шаблоны как члены шаблона класса ..............................................268

 

19.8. Объявление друзей в шаблоне класса .............................................269

 

19.9. Шаблоны класса и наследование .....................................................273

 

19.10. Шаблоны класса как параметры шаблонов функций ...................274

 

19.11. Шаблоны класса как параметры шаблона класса.........................275

 

ЧАСТЬ III. СТАНДАРТНАЯ БИБЛИОТЕКА  
ЯЗЫКА ПРОГРАММИРОВАНИЯ C ....................................... 277

 

Глава 20. Стандартные определения <stddef.h> .................... 279

 

20.1. Типы данных .....................................................................................279

 

20.2. Макрос 

NULL

 ....................................................................................280

 

20.3. Макрос 

offsetof

 ...................................................................................280

 

Глава 21. Стандартные функции <stdlib.h> ............................ 282

 

21.1. Динамическое распределение памяти .............................................282

 

21.2. Динамические массивы ....................................................................284

 

21.3. Стандартные функции сортировки и поиска ..................................287

 

21.4. Взаимодействие с системой .............................................................290

 

21.5. Преобразования строк в числа .........................................................294

 

21.6. Арифметические функции ................................................................298

 

21.7. Генерация случайных чисел .............................................................299

 

21.8. Обработка длинных символов .........................................................301

 

Глава 22. Диагностика ошибок <assert.h> ............................... 305

 

Глава 23. Функции с переменным количеством 
параметров <stdarg.h> ................................................................. 307

 


background image

Оглавление 

Глава 24. Диапазоны целочисленных данных <limits.h> ..... 311

 

Глава 25. Диапазоны чисел с плавающей точкой  
<float.h> ........................................................................................... 313

 

Глава 26. Обработка ошибок <errno.h> ................................... 316

 

Глава 27. Математические функции <math.h> ....................... 318

 

27.1. Обработка ошибок ............................................................................318

 

27.2. Тригонометрические функции .........................................................319

 

27.3. Экспоненциальная и логарифмическая функции ...........................320

 

27.4. Гиперболические функции ...............................................................321

 

27.5. Степень и квадратный корень ..........................................................321

 

27.6. Экспонента и мантисса .....................................................................322

 

27.7. Целая и дробная часть числа с плавающей точкой ........................323

 

27.8. Целые границы числа с плавающей точкой ....................................323

 

27.9. Остаток от деления ...........................................................................324

 

27.10. Абсолютное значение числа...........................................................324

 

Глава 28. Функции классификации символов <ctype.h> ..... 325

 

28.1. Определение типа символа...............................................................325

 

28.2. Отображения прописных и строчных символов ............................326

 

Глава 29. Функции для работы со строками <string.h> ........ 328

 

29.1. Сравнение строк ................................................................................328

 

29.2. Копирование строк............................................................................329

 

29.3. Соединение строк ..............................................................................330

 

29.4. Поиск символа в строке ....................................................................331

 

29.5. Поиск подстроки в строке ................................................................333

 

29.6. Разбор строки на лексемы ................................................................334

 

29.7. Определение длины строки ..............................................................335

 

29.8. Функции для работы с памятью .......................................................336

 

29.9. Сравнение строк, содержащих локальные символы ......................337

 

29.10. Получение строки, описывающей код ошибки ............................339

 

Глава 30. Функции для работы с файлами <stdio.h> ............ 341

 

30.1. Файлы и потоки .................................................................................341

 

30.2. Открытие файла ................................................................................343

 

30.3. Перенаправление потока ..................................................................344

 

30.4. Закрытие файла .................................................................................344

 


Смотрите также файлы