Стенли Липпман - Язык программирования C++. Пятое издание

Тут можно читать онлайн Стенли Липпман - Язык программирования C++. Пятое издание - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом Вильямс, год 2014. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Язык программирования C++. Пятое издание
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом Вильямс
  • Год:
    2014
  • Город:
    Москва
  • ISBN:
    978-5-8459-1839-0
  • Рейтинг:
    3/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Стенли Липпман - Язык программирования C++. Пятое издание краткое содержание

Язык программирования C++. Пятое издание - описание и краткое содержание, автор Стенли Липпман, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
Лучшее руководство по программированию и справочник по языку, полностью пересмотренное и обновленное под стандарт С++11!
Вы держите в руках новое издание популярного и исчерпывающего бестселлера по языку программирования С++, которое было полностью пересмотрено и обновлено под
. Оно поможет вам быстро изучить язык и использовать его весьма эффективными и передовыми способами. В соответствии с самыми передовыми и современными методиками изложения материала авторы демонстрируют использование базового языка и его стандартной библиотеки для разработки эффективного, читабельного и мощного кода.
С самого начала этой книги читатель знакомится со стандартной библиотекой С++, ее самыми популярными функциями и средствами, что позволяет сразу же приступить к написанию полезных программ, еще не овладев всеми нюансами языка. Большинство примеров из книги было пересмотрено так, чтобы использовать новые средства языка и продемонстрировать их наилучшие способы применения. Эта книга — не только проверенное руководство для новичков в С++, она содержит также авторитетное обсуждение базовых концепций и методик языка С++ и является ценным ресурсом для опытных программистов, особенно желающих побыстрей узнать об усовершенствованиях С++11.
Стенли Б. Липпман Жози Лажойе Барбара Э. Му • Узнайте, как использовать новые средства языка С++11 и стандартной библиотеки для быстрого создания надежных программ, а также ознакомьтесь с высокоуровневым программированием
• Учитесь на примерах, в которых показаны передовые стили программирования и методики проектирования
• Изучите принципы и узнайте почему язык С++11 работает именно так
• Воспользуйтесь множеством перекрестных ссылок, способных помочь вам объединить взаимосвязанные концепции и проникнуть в суть
• Ознакомьтесь с современными методиками обучения и извлеките пользу из упражнений, в которых подчеркиваются ключевые моменты, позволяющие избежать проблем
• Освойте лучшие методики программирования и закрепите на практике изученный материал
Исходный код примеров можно загрузить с веб-страницы книги на сайте издательства по адресу: http://www.williamspublishing.com

Язык программирования C++. Пятое издание - читать онлайн бесплатно полную версию (весь текст целиком)

Язык программирования C++. Пятое издание - читать книгу онлайн бесплатно, автор Стенли Липпман
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Язык программирования C Пятое издание - изображение 140Оператор reinterpret_castжестко зависит от конкретной машины. Чтобы безопасно использовать оператор reinterpret_cast, следует хорошо понимать, как именно реализованы используемые типы, а также то, как компилятор осуществляет приведение.

Приведение типов в старом стиле

В ранних версиях языка С++ явное приведение имело одну из следующих двух форм:

тип ( выражение ); // форма записи приведения в стиле функции

( тип ) выражение ; // форма записи приведения в стиле языка С

В зависимости от используемых типов, приведение старого стиля срабатывает аналогично операторам const_cast, static_castили reinterpret_cast. В случаях, где используются операторы static_castили const_cast, приведение типов в старом стиле позволяет осуществить аналогичное преобразование, что и соответствующий именованный оператор приведения. Но если ни один из подходов не допустим, то приведение старого стиля срабатывает аналогично оператору reinterpret_cast. Например, используя форму записи старого стиля, можно получить тот же результат, что и с использованием reinterpret_cast.

char *pc = (char*) ip; // ip указатель на тип int

Совет. Избегайте приведения типов

Приведение нарушает обычный порядок контроля соответствия типов (см. раздел 2.2), поэтому авторы настоятельно рекомендуют избегать приведения типов. Это особенно справедливо для оператора reinterpret_cast. Такие приведения всегда опасны. Операторы const_castмогут быть весьма полезны в контексте перегруженных функций, рассматриваемых в разделе 6.4. Использование оператора const_castзачастую свидетельствует о плохом проекте. Другие операторы приведения, static_castи dynamic_cast, должны быть необходимы нечасто. При каждом применении приведения имеет смысл хорошо подумать, а нельзя ли получить тот же результат другим способом. Если приведение все же неизбежно, имеет смысл принять меры, позволяющие снизить вероятность возникновения ошибки, т.е. ограничить область видимости, в которой используется приведенное значение, а также хорошо документировать все подобные случаи.

Язык программирования C Пятое издание - изображение 141Приведения старого стиля менее очевидны, чем именованные операторы приведения. Поскольку их легко упустить из виду, обнаружить ошибку становится еще трудней.

Упражнения раздела 4.11.3

Упражнение 4.36. С учетом того, что iимеет тип int, a ddouble, напишите выражение i *= dтак, чтобы осуществлялось целочисленное умножение, а не с плавающей запятой.

Упражнение 4.37. Перепишите каждое из следующих приведений старого стиля так, чтобы использовался именованный оператор приведения.

int i; double d; const string *ps; char *pc; void *pv;

(a) pv = (void*)ps; (b) i = int(*pc);

(c) pv = &d; (d) pc = (char*)pv;

Упражнение 4.38. Объясните следующее выражение:

double slope = static_cast(j/i);

4.12. Таблица приоритетов операторов

Таблица 4.4. Приоритет операторов

Порядок и оператор Действие Применение Раздел
Л :: Глобальная область видимости :: имя 7.4.1
Л :: Область видимости класса класс :: имя 3.2.2
Л :: Область видимости пространства имен пространствоимен :: имя 3.1
Л . Обращение к члену класса объект . член 1.5.2
Л -> Обращение к члену класса pointer -> член 3.4.1
Л [] Индексирование выражение [ выражение ] 3.5.2
Л () Вызов функции имя ( список_выражений ) 1.5.2
Л () Конструкция type тип ( список_выражений ) 4.11.3
П ++ Постфиксный инкремент l-значение ++ 4.5
П -- Постфиксный декремент l-значение -- 4.5
П typeid Идентификатор типа typeid( тип ) 19.2.2
П typeid Идентификатор типа времени выполнения typeid( выражение ) 19.2.2
П Явное приведение Преобразование типов cast_имя< тип >( выражение ) 4.11.3
П ++ Префиксный инкремент ++ l-значение 4.5
П -- Префиксный декремент -- l-значение 4.5
П ~ Побитовое NOT ~ выражение 4.8
П ! Логическое NOT ! выражение 4.3
П - Унарный минус - выражение 4.2
П + Унарный плюс + выражение 4.2
П * Обращение к значению * выражение 2.3.2
П & Обращение к адресу & l-значение 2.3.2
П () Преобразование типов ( тип ) выражение 4.11.3
П sizeof Размер объекта sizeof выражение 4.9
П sizeof Размер типа sizeof( тип ) 4.9
П sizeof... Размер пакета параметров sizeof...( имя ) 16.4
П new Создание объекта new тип 12.1.2
П new[] Создание массива new тип [ размер ] 12.1.2
П delete Освобождение объекта delete выражение 12.1.2
П delete[] Освобождение массива delete[] выражение 12.1.2
П noexcept Способность к передаче noexcept( выражение ) 18.1.4
Л ->* Указатель на член класса указатель ->* указатель_на_член 19.4.1
Л .* Указатель на член класса объект .* указатель_на_член 19.4.1
Л * Умножение выражение * выражение 4.2
Л / Деление выражение / выражение 4.2
Л % Деление по модулю (остаток) выражение % выражение 4.2
Л + Сумма выражение + выражение 4.2
Л - Разница выражение - выражение 4.2
Л << Побитовый сдвиг влево выражение << выражение 4.8
Л >> Побитовый сдвиг вправо выражение >> выражение 4.8
Л < Меньше выражение < выражение 4.3
Л <= Меньше или равно выражение <= выражение 4.3
Л > Больше выражение > выражение 4.3
Л >= Больше или равно выражение >= выражение 4.3
Л == Равенство выражение == выражение 4.3
Л != Неравенство выражение != выражение 4.3
Л & Побитовый AND выражение & выражение 4.8
Л ^ Побитовый XOR выражение ^ выражение 4.8
Л | Побитовый OR выражение | выражение 4.8
Л && Логический AND выражение && выражение 4.3
Л || Логический OR выражение || выражение 4.3
П ?: Условный оператор выражение ? выражение : выражение 4.7
П = Присвоение l-значение = выражение 4.4
П *=, /=, %=, Составные операторы присвоения l-значение += выражение , и т.д. 4.4
П +=, -=, 4.4
П <<=, >>=, 4.4
П &=, |=, ^= 4.4
П throw Передача исключения throw выражение 4.6.1
Л , Запятая выражение, выражение 4.10

Резюме

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стенли Липпман читать все книги автора по порядку

Стенли Липпман - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Язык программирования C++. Пятое издание отзывы


Отзывы читателей о книге Язык программирования C++. Пятое издание, автор: Стенли Липпман. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий