Программисты с опытом работы на других языках высокого уровня смогут на практике освоить современный C++ и «большую четверку» его новых возможностей: диапазоны, концепты, модули и корутины.
200+ практических примеров реального исходного кода позволят быстро овладеть идиомами современного C++, используя популярные компиляторы: Visual C++®, GNU® g++, Apple® Xcode® и LLVM®/Clang. Знание базы позволит перейти к контейнерам стандартной библиотеки C++ array и vector; функциональному программированию с диапазонами и представлениями С++20; строкам, файлам и регулярным выражениям; объектно-ориентированному программированию с классами, наследованием, динамическим и статическим полиморфизмом; перегрузке операторов, семантике копирования и перемещения, RAI1 и умным указателям; исключениям и ожидаемым в С++23 контрактам; контейнерам, итераторам и алгоритмам стандартной библиотеки; шаблонам, концептам С++20 и метапрограммированию; модулям C++ 20 и технологии разработки больших программ; конкурентности, параллелизму, параллельным алгоритмам стандартной библиотеки C++17 и С++20 и корутинам С++20.

Управляющие структуры.
В 1960-е годы стало ясно, что причина многих проблем, затрудняющих совместную работу групп программистов, — это беспорядочная передача управления от одних инструкций к другим. Виновником была объявлена инструкция goto (входящая тогда в большинство языков программирования), позволяющая произвольно менять последовательность выполнения других инструкций.
Исследование Бёма и Якопини2 показало, что можно писать программы, не применяя goto. И программистам той эпохи пришлось постараться, чтобы изменить свой привычный стиль мышления на «программирование без goto». Термин «структурное программирование» (structured programming) стал почти синонимом всеобщего отказа от goto. Результаты оказались впечатляющими. Многие группы программистов сообщали, что разработка ускорилась, проекты стали чаще завершаться в запланированные сроки и в рамках бюджета. Эти успехи объяснялись тем, что структурированные программы стали гораздо понятнее, их стало легче отлаживать и модифицировать, а главное, повышалась вероятность, что в них нет ошибок.
ОГЛАВЛЕНИЕ.
Предисловие.
Современный С++.
В курсе событий.
Кому пригодится эта книга.
Готовые файлы с исходным кодом программ.
Три профессиональных компилятора на выбор.
Учебный метод готовых объектов.
Что такое готовые объекты?.
Бесплатные классы.
Проект Boost.
Примеры кода с готовыми объектами.
Краткое содержание книги.
Часть 1. Быстрый старт и базовые возможности С++.
Часть 2. Массивы, указатели и строки.
Часть 3. Объектно-ориентированное программирование.
Часть 4. Контейнеры, итераторы и алгоритмы стандартной библиотеки.
Часть 5. Более сложные темы.
Приложения.
Дополнительные материалы на сайте deitel.com.
С++ Core Guidelines.
Библиотека Guidelines Support Library (GSL).
Профессиональные статические анализаторы кода.
Интернет-ресурсы для программистов.
Stack Overflow.
GitHub.
Docker.
Некоторые ключевые документы и ресурсы по С++.
Документация.
Блоги.
Дополнительные ресурсы.
Сайты, где ответят на ваши вопросы.
Общение с авторами.
Благодарности.
Рецензенты.
Артур О'Двайр.
GitHub.
Мэтт Годболт и Compiler Explorer.
Дитмар Куль.
Райнер Гримм.
Брайан Гетц.
Разработчики программ с открытым исходным кодом и блогеры.
Поисковая система Google.
Grammarly.
Об авторах.
От издательства.
Перед началом работы.
Условные обозначения.
Загрузка примеров кода.
Компиляторы, на которых мы тестировали исходный код.
Не все примеры кода совместимы со всеми тремя компиляторами.
Установка Visual Studio Coшmuпity Edition в Windows.
Установка Xcode в macOS.
Установка актуальной версии GNU С++.
Установка GNU Compiler Collection в Ubuntu Linux, запущенной в подсистеме Windows для Linux.
Docker и контейнеры Docker.
Установка Docker.
Загрузка контейнера Docker, содержащего GNU Compiler Collection.
Загрузка контейнера Docker, содержащего Clang.
Ответы на ваши вопросы по С++.
Онлайн-документация по С++.
О библиотеке форматирования текста {fmt}.
Средства статического анализа кода.
Глава 1. Введение и тест-драйв популярных бесплатных компиляторов С++.
Глава 2. Азы программирования на С++.
Глава 3. Управляющие инструкции (часть 1).
Глава 4. Управляющие инструкции (часть 2).
Глава 5. Функции и шаблоны функций.
Глава 6. Массивы, векторы, библиотека ranges и функциональное программирование.
Глава 7. Указатели в современном С++ (фактор риска).
Глава 8. Строки и их представления, текстовые файлы, СSV-файлы и регулярные выражения.
Глава 9. Пользовательские классы.
Глава 10. ООП: наследование и динамический полиморфизм.
Глава 11. Перегрузка операторов, семантика копирования и перемещения, умные указатели.
Глава 12. Исключения и обзор контрактного программирования.
Глава 13. Контейнеры и итераторы стандартной библиотеки.
Глава 11. Алгоритмы стандартной библиотеки, диапазоны и представления С++20.
Глава 15. Шаблоны, концепты (С++20) и метапрограммирование.
Глава 16. Модули (С++20): технология разработки больших программ.
Глава 17. Параллельные алгоритмы и конкурентность: высокоуровневый подход.
Глава 18. Корутины (С++20).
Приложение А. Приоритеты и группировка операторов.
Приложение Б. Набор символов.
Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу С++20 для программистов, Дейтел П., Дейтел Х., 2024 - fileskachat.com, быстрое и бесплатное скачивание.
Скачать zip
Ниже можно купить эту книгу, если она есть в продаже, и похожие книги по лучшей цене со скидкой с доставкой по всей России.Купить книги
Скачать - pdf - Яндекс.Диск.
Дата публикации:
Теги: учебник по программированию :: программирование :: Дейтел :: компилятор :: метапрограммирование
Смотрите также учебники, книги и учебные материалы:
Следующие учебники и книги:
Предыдущие статьи:












