ZEOS

Ваш IP адрес: 54.234.13.175
Сегодня: 21.11.2018
06:45

Онлайн-библиотека учебно-методической литературы

Библиотека mirsmartbook.ru предлагает посетителям возможность чтения книг в режиме онлайн.
Книги, ГДЗ, решебники, готовые домашние задания, ЕГЭ, ГИА, наука и обучение, словари, все для преподавателей, школьников и студентов, русский язык, математика, физика, английский язык, алгебра, геометрия по всем классам, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 класс. А ты НАШЁЛ то, что тебе нужно? У нас Вы сможете найти все!
Новости Контакты Главная
Загрузка...
Открыть-Закрыть рекламный блок

Меню сайта

Реклама

Счетчики


Мы вконтакте

Загрузка...

Время учиться

Реклама

Освой самостоятельно C++ по одному часу в день / Рао С. / 2017


18:58
Освой самостоятельно C++ по одному часу в день / Рао С. / 2017
Аннотация: Освой самостоятельно C++ по одному часу в день, Рао С., 2017.

 Сиддхартха Pao — вице-президент по вопросам безопасности в компании SAP AG, ведущем мировом поставщике корпоративного программного обеспечения. Постоянная эволюция языка C++ постоянно убеждает Рао в том, что приложения на C++ можно создавать быстрее, проще и эффективнее.
Сиддхартха любит путешествовать и является страстным поклонником горного велосипеда. Он с нетерпением ждет ваших отзывов о своей работе!

Потребность в классах обработки строк.
Строка в языке C++ — это массив символов. Как вы уже видели на занятии 4, “Массивы и строки”, простейший символьный массив может быть определен следующим образом:
char staticName[20];
Здесь объявляется символьный массив (именуемый также строкой) фиксированной (статический) длины в 20 элементов. Очевидно, что этот массив может содержать строку ограниченной длины; он окажется переполненным при попытке сохранить в нем большее количество символов. Изменение размеров такого статического массива невозможно. Для преодоления этого ограничения язык C++ предоставляет динамическое распределение памяти для данных. Вот более динамичное представление строкового массива:
char* dynamicName = new char[arrayLen];
Это динамически распределенный символьный массив, длина экземпляра которого может быть задана при создании значением переменной arrayLen, определяемым во время выполнения, а следовательно, способным содержать данные переменной длины. Но если понадобится изменить длину массива во время выполнения, то придется сначала освободить распределенную память, а затем повторно выделить ее для содержания необходимых данных.
Ситуация усложняется, если такие символьные строки используются как данные-члены класса. В ситуациях, когда объект такого класса присваивается другому, при отсутствии грамотно созданного копирующего конструктора и оператора присваивания оба эти объекта будут содержать копии указателя, указывающего на один и тот же строковый буфер, т.е. на одну и ту же область памяти. В результате удаления одного объекта указатель в другом объекте оказывается недействительным (указывающим на освобожденную область памяти, которая может быть использована для других нужд), а ваша программа сталкивается с нешуточными неприятностями.

Оглавление.
ВВЕДЕНИЕ.
ЧАСТЬ I. ОСНОВЫ C++.
ЗАНЯТИЕ 1. Первые шаги.
ЗАНЯТИЕ 2. Структура программы на C++.
ЗАНЯТИЕ 3. Использование переменных и констант.
ЗАНЯТИЕ 4. Массивы и строки.
ЗАНЯТИЕ 5. Выражения, инструкции и операторы.
ЗАНЯТИЕ 6. Управление потоком выполнения программы.
ЗАНЯТИЕ 7. Организация кода с помощью функций.
ЗАНЯТИЕ 8. Указатели и ссылки.
ЧАСТЬ II. Объектно-ориентированное программирование на C++.
ЗАНЯТИЕ 9. Классы и объекты.
ЗАНЯТИЕ 10. Реализация наследования.
ЗАНЯТИЕ 11. Полиморфизм.
ЗАНЯТИЕ 12. Типы операторов и их перегрузка.
ЗАНЯТИЕ 13. Операторы приведения.
ЗАНЯТИЕ 14. Введение в макросы и шаблоны.
ЧАСТЬ III. Стандартная библиотека шаблонов.
ЗАНЯТИЕ 15. Введение в стандартную библиотеку шаблонов.
ЗАНЯТИЕ 16. Класс строки библиотеки STL.
ЗАНЯТИЕ 17. Классы динамических массивов библиотеки STL.
ЗАНЯТИЕ 18. Классы list и forvard_list.
ЗАНЯТИЕ 19. Классы множеств STL.
ЗАНЯТИЕ 20. Классы отображений библиотеки STL.
ЧАСТЬ IV. Углубляемся в STL.
ЗАНЯТИЕ 21. Понятие о функциональных объектах.
ЗАНЯТИЕ 22. Лямбда-выражения языка С++11.
ЗАНЯТИЕ 23. Алгоритмы библиотеки STL.
ЗАНЯТИЕ 24. Адаптивные контейнеры: стек и очередь.
ЗАНЯТИЕ 25. Работа с битовыми флагами при использовании библиотеки STL.
ЧАСТЬ V. Сложные концепции C++.
ЗАНЯТИЕ 26. Понятие интеллектуальных указателей.
ЗАНЯТИЕ 27. Применение потоков для ввода и вывода.
ЗАНЯТИЕ 28. Обработка исключений.
ЗАНЯТИЕ 29. Что дальше.
ЧАСТЬ VI. Приложения.
ПРИЛОЖЕНИЕ А. Двоичные и шестнадцатеричные числа.
ПРИЛОЖЕНИЕ Б. Ключевые слова языка C++.
ПРИЛОЖЕНИЕ В. Приоритет операторов.
ПРИЛОЖЕНИЕ Г. Коды ASCII.
ПРИЛОЖЕНИЕ Д. Ответы.
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ.
 
Прикрепления: Картинка 1
Категория: Информатика студентам | Просмотров: 11 | Добавил: novivirus | Теги: Рао С. | Рейтинг: 0.0/0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Похожие материалы: