• C++20高级编程 (比) 马克·格雷戈勒著 9787302602132 清华大学出版社
  • C++20高级编程 (比) 马克·格雷戈勒著 9787302602132 清华大学出版社
21年品牌 40万+商家 超1.5亿件商品

C++20高级编程 (比) 马克·格雷戈勒著 9787302602132 清华大学出版社

全新正版书,当天发货。如有套装书(或图片与书名不符),价格异常,可能是单本书的价格。

134.5 5.9折 228 全新

库存3件

北京通州
认证卖家担保交易快速发货售后保障

作者(比) 马克·格雷戈勒著

出版社清华大学出版社

ISBN9787302602132

出版时间2022-04

装帧平装

开本其他

定价228元

货号3994382

上书时间2024-03-28

湘云书店

十六年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
前言

作为带有类的C的继承者,丹麦计算机科学家Bjarne Stroustrup于1982年发明了C 。1985年,发布了版的“C 程序设计语言”。个标准化版本的C 在1998年发布,称为C 98。在2003年,C 03发布并包含了一些小的更新。在那之后,C 沉默了一段时间,但吸引力开始慢慢增强,导致该语言在2011年进行了重大更新,称为C 11。从那以后,C 标准委员会以3年的周期发布更新的版本,出现了C 14、C 17以及现在的C 20。总之,2020年发布了C 20之后,C 已经将近40年了,并且仍然很强大。在2020年的大多数编程语言排名中,C 都排在前四位。它被广泛用于各种硬件,从带有嵌入式微处理器的小型设备一直到超级计算机。除了广泛的硬件支持,C 还可以用来解决几乎任何编程工作,如移动平台上的游戏、对性能要求严格的人工智能(AI)和机器学习(ML)软件、实时三维图形引擎、底层硬件驱动程序、整个操作系统等。C 程序很难与任何其他编程语言相匹配,因此,多年来,C 都是编写性能卓越、功能强大的企业级面向对象程序的事实标准语言。尽管C 语言已经风靡全球,但这种语言却难以完全掌握。专业C 程序员使用一些简单但高效的技术,这些技术并未出现在传统教材中;即使是经验丰富的C 程序员,也未必完全了解C 中某些很有用的特性。
编程书籍往往重点描述语言的语法,而不是语言在真实世界中的应用。典型的C 教材在每一章中介绍语言中的大部分知识,讲解语法并列举示例。《C 20高级编程(第5版) 》不遵循这种模式。《C 20高级编程(第5版) 》并不讲解语言的大量细节并给出少量真实世界的场景,而是教你如何在真实世界中使用C 。《C 20高级编程(第5版) 》还会讲解一些鲜为人知的让编程更简单的特性,以及区分编程新手和专业程序员的编程技术。
读者对象
就算使用C 已经多年,你也仍可能不熟悉C 的一些高级特性,或仍不具有使用这门语言的完整能力。也许你编写过实用的C 代码,但还想学习更多有关C 中设计和良好编程风格的内容。也许你是C 新手,想在入门时就掌握“正确”的编程方式。《C 20高级编程(第5版) 》能满足上述需求,将你的C 技能提升到专业水准。
因为《C 20高级编程(第5版) 》专注于将你从对C 具有基本或中等了解水平蜕变为一名专业C 程序员,所以《C 20高级编程(第5版) 》假设你对该语言具有一定程度的认识。第1章涵盖C 的一些基础知识,可以当成复习材料,但是不能替代实际的语言培训和语言使用手册。如果你刚开始接触C ,但有很丰富的C、Java或C#语言经验,那么应该能从第1章获得所需的大部分知识。
不管属于哪种情况,都应该具有很好的编程基础。应该知道循环、函数和变量。应该知道如何组织一个程序,而且应该熟悉基本技术,例如递归。应该了解一些常见的数据结构(例如队列)以及有用的算法(例如排序和搜索)。不需要预先了解有关面向对象编程的知识—— 这是第5章讲解的内容。
你还应该熟悉开发代码时使用的编译器。稍后将简要介绍Microsoft Visual C 和GCC这两种编译器。要了解其他编译器,请参阅编译器自带的指南。
《C 20高级编程(第5版) 》主要内容
阅读《C 20高级编程(第5版) 》是学习C 语言的一种方法,通过阅读《C 20高级编程(第5版) 》既能提升编码质量,又能提升编程效率。《C 20高级编程(第5版) 》贯穿对C 20新特性的讨论。这些新的C 特性并不是独立在某几章中,而是穿插于全书,在有必要的情况下,所有例子都已更新为使用这些新特性。
《C 20高级编程(第5版) 》不仅讲解C 语法和语言特性,还强调编程方法论、可重用的设计模式以及良好的编程风格。《C 20高级编程(第5版) 》讲解的方法论覆盖整个软件开发过程——从设计和编码,到调试以及团队协作。这种方法可让你掌握C 语言及其独有特性,还能在大型软件开发中充分利用C 语言的强大功能。
想象一下有人学习了C 的所有语法但没有见过一个C 例子的情形。他所了解的知识会让他处于非常危险的境地。如果没有示例的引导,他可能会认为所有源代码都要放在程序的main()函数中,还有可能认为所有变量都应该为全局变量—— 这些都不是良好的编程实践。
专业的C 程序员除了理解语法外,还要正确理解语言的使用方式。他们知道良好设计的重要性、面向对象编程的理论以及使用现有库的方式。他们还开发了大量有用的代码并了解可重用的思想。
通过阅读和理解《C 20高级编程(第5版) 》的内容,你也能成为一名专业的C 程序员。你在C 方面的知识会得到扩充,将接触到鲜为人知和常被误解的语言特性。你还将领略面向对象设计,掌握卓越的调试技能。重要的或许是,通过阅读《C 20高级编程(第5版) 》,你的头脑中有了大量“可重用”思想,可将这些思想贯彻到日常工作中。
有很多好的理由让你努力成为一名专业的C 程序员,而非只是泛泛了解C 。了解语言的真正工作原理有助于提升代码质量。了解不同的编程方法论和过程可让你更好地和团队协作。探索可重用的库和常用的设计模式可提升日常工作效率,并帮助你避免白费力气的重复工作。所有这些学习课程都在帮助你成为更优秀的程序员,同时成为更有价值的雇员。
《C 20高级编程(第5版) 》结构
《C 20高级编程(第5版) 》包括5部分。
第I部分“专业的C 简介”是C 基础速成教程,能确保读者掌握C 的基础知识。在速成教程后,这部分深入讨论字符串和字符串视图的使用,因为字符串在示例中应用广泛。这部分的后一章介绍如何编写清晰易读的C 代码。
第II部分“专业的C 软件设计”介绍C 设计方法论。你会了解设计的重要性、面向对象方法论和代码重用的重要性。
第III部分“C 编码方法”从专业角度概述C 技术。你将学习在C 中管理内存的方式,如何创建可重用的类,以及如何利用重要的语言特性,例如继承。你还会学习输入输出技术、错误处理、字符串本地化和正则表达式的使用,学习如何利用模块组织可重用的代码。这部分还会讨论如何实现运算符重载,如何编写模板,如何使用概念限制模板参数,以及如何解锁lambda表达式和函数对象的功能。这部分还解释了C 标准库,包括容器、迭代器、范围和算法。在这部分你还将了解标准中提供的一些附加库,例如用于处理时间、日期、时区、随机数和文件系统的库。
第IV部分“掌握C 的高级特性”讲解如何限度地使用C 。这部分揭示C 中神秘的部分,并描述如何使用这些更高级的特性。在这部分你将学习如何定制和扩充标准库以满足自己的需求、高级模板编程的细节(包括模板元编程),以及如何通过多线程编程来充分利用多处理器和多核系统。
第V部分“C 软件工程”重点介绍如何编写企业级质量的软件。在这部分你将学习当今编程组织使用的工程实践,如何编写高效的C 代码,软件测试概念(如单元测试和回归测试),C 程序的调试技术,如何在自己的代码中融入设计技术、框架和概念性的面向对象设计模式,跨语言和跨平台代码的解决方案等。 
《C 20高级编程(第5版) 》后是四个附录。附录A列出在C 技术面试中取得成功的指南,附录B总结C 标准中的头文件,附录C简要介绍UML(Unified Modeling Language,统一建模语言),附录D是带注解的参考文献列表(附录B~D通过扫描封底二维码获取)。
《C 20高级编程(第5版) 》没有列出C 中每个类、方法和函数的参考。Peter Van Weert和Marc Gregoire撰写的C 17 Standard Library Quick Reference是C 17标准库提供的所有重要数据结构、算法和函数的浓缩版。附录D列出了更多参考资料。下面是两个很好的在线参考资料。

 

cppreference.com

 

可使用这个在线参考资料,也可下载其离线版本,在没有连接到互联网时使用。

 

cplusplus.com/reference/

 

《C 20高级编程(第5版) 》正文中提到“标准库参考资料”时,就是指上述C 参考资料。
下面是其他的优质在线资源:

 

github.com/isocpp/CppCoreGuidelines

 

C 核心指南是由C 语言发明人Bjarne Stroustrup亲自领导的协作工作。它们是许多组织多年讨论和设计的结果。指南的目的是帮助人们有效地使用现代C 。这些指导方针侧重于相对较高级别的问题,如接口、资源管理、内存管理和并发。

 

github.com/Microsoft/GSL

 

这是微软的指南支持库(GSL)的一个实现,它包含了C 核心指南使用的函数和类型。这是一个只有头文件的库。

 

isocpp.org/faq

 

这是一个频繁被提问的C 问题的庞大集合。

 

stackoverflow.com

 

搜索常见编程问题的回答,或者提出你自己的问题。
使用《C 20高级编程(第5版) 》的条件
要使用《C 20高级编程(第5版) 》,只需要一台带有C 编译器的计算机。《C 20高级编程(第5版) 》只关注C 中的标准部分,而没有任何编译器厂商相关的扩展。
任何C 编译器
可使用任意C 编译器。如果还没有C 编译器,可下载一个免费的。这有许多选择。例如,对于Windows,可下载Microsoft Visual Studio Community Edition,这个版本免费且包含Visual C ;对于Linux,可使用GCC或Clang,它们也是免费的。
下面将简要介绍如何使用Visual C 和GCC。可参阅相关的编译器文档了解更多信息。
编译器与C 20特性支持
《C 20高级编程(第5版) 》包含C 20标准引入的新特性。在撰写《C 20高级编程(第5版) 》时,还没有编译器可以完全支持C 20的所有新特性。某些新特性仅由某些编译器支持,而其他编译器不支持,而有些功能尚不受任何编译器支持。编译器厂商正在努力支持所有新特性,我相信不久就会有完全符合C 20标准的编译器可用。可以在en.cppreference.com/w/cpp/compiler_support上查看哪些编译器支持哪些功能。

 

编译器与C 20模块支持
在撰写《C 20高级编程(第5版) 》时,还没有编译器可以完全支持C 20的模块。有些编译器提供了实验性支持,但仍然不完整。《C 20高级编程(第5版) 》到处都使用模块。我们尽了努力确保编译器完全支持模块后,所有示例代码都可以编译,但由于我们无法编译和测试所有示例,因此可能会出现一些错误。当使用支持模块的编译器时,如果遇到任何代码示例的问题,请在www.wiley.com/go/proc 5e上仔细检查《C 20高级编程(第5版) 》的勘误表,以查看是否存在已知问题。如果你的编译器还不支持模块,可以将模块化代码转换为非模块化代码,第11章中有简要说明。

 

示例:Microsoft Visual C 2019
首先需要创建一个项目。启动Visual C 2019,在欢迎界面上,单击Create A New Project按钮。如果没有出现欢迎界面,单击File | New | Project。在Create A New Project对话框中,使用C 、Windows和Console标签,找到Console App项目模板,然后单击Next按钮。指定项目的名称、保存位置,单击Create按钮。
加载新项目后,就会在Solution Explorer中看到项目文件列表。如果这个停靠窗口不可见,可选择View | Solution Explorer。一个新创建的项目会包括一个名为<projectname>.cpp的文件,可以在该文件中开始编写C 代码。如果想要编译源代码文件(从封底二维码获取《C 20高级编程(第5版) 》源代码压缩文件),则必须在Solution Explorer中选择<projectname>.cpp文件并将其删除。在Solution Explorer中右击项目名,再选择Add | New Item 或Add | Existing Item,就可以给项目添加新文件或已有文件。
在撰写《C 20高级编程(第5版) 》期间,Visual C 2019尚未自动启用C 20特性。要启用C 20特性,可在Solution Explorer窗口中右击项目,然后单击Properties。在Properties窗口中,选择Configuration Properties | C/C | Language,根据使用的Visual C 版本,将C Language Standard选项设置为ISO C 20 Standard或Preview | Features from the Latest C Working Draft。仅当项目至少包含一个.cpp文件时,才能访问这些选项。
后,使用Build | Build Solution编译代码。没有编译错误后,就可以使用Debug | Start Debugging运行了。
模块支持
在撰写《C 20高级编程(第5版) 》期间,Visual C 2019尚未完全支持模块。编写或使用自己的模块通常没有问题,但是,导入标准库头文件(如以下内容)还不能立即生效:

 

import <iostream>;

 

要使此类导入声明生效,目前需要向项目中添加一个单独的头文件,例如HeaderUnits.h,其中包含要导入的每个标准库头文件的导入声明。例如:

 

// HeaderUnits.h
#pragma once
import <iostream>;
import <vector>;
import <optional>;
import <utility>;
// ...

 

商品简介

主要内容

 

● 演示如何用C 思考,以更大限度地发挥语言的深远能力,并开发有效的解决方案

 

● 解释难以理解的原理,进行陷阱警告,分享提高效率和性能的提示、技巧和变通方法

 

● 呈现各种具有挑战性的、真实世界的程序,其用途广泛,足以融入任何项目

 

● 重点介绍C 20的新特性,包括模块、概念、三向比较、立即执行函数等

 

● 深入讨论新的C 20标准库功能,例如文本格式化、范围、原子智能指针、同步原语、日期、时区等



作者简介
    马克·格雷戈勒(Marc Gregoire)是微软Visual C++的MVP、软件架构师和开发人员,比利时C++用户组的创始人。他曾为西门子和诺基亚西门子网络公司完成关键的2G和3G通信软件,目前在Nikon Metrology公司工作,负责开发X射线、CT和3D几何检测软件。Marc是该系列书第2版到第4版的作者,并担任多本IT图书的技术编辑。

目录
本书讲述如何设计和构建最优秀的应用程序来解决现实问题, 讨论如何使用C++的所有功能来实现解决方案, 探讨鲜为人知的C++功能, 演示了编程风格、测试和调试的最佳实践, 是设计和构建C++应用程序的实用指南。在简单介绍C++基本原理后, 接着讲解如何在日常工作中使用C++, 讲述各种编程方法和良好的编程方式, 以及如何提高代码质量, 提升编程效率。通过学习本书, 你将学会编写跨语言和跨平台代码, 将能执行单元测试和回归测试, 并熟悉和使用大量可重用的代码模式。本书提供富有挑战的、紧贴实用的、可供下载的示例代码段供读者学习。

内容摘要
众所周知,C++难以掌握,但其广泛的功能使其成为游戏和商业软件应用程序中最常用的语言。即使是有经验的用户通常也不熟悉许多不错特性,但C++20的发布提供了探索该语言全部功能的不错机会。《C++20不错编程(第5版)》为C++的必要内容提供了一个代码密集型、面向解决方案的指南,包括近期新版本中的近期新工具和功能。本书包含面向现实世界编程的实用指导,是程序员深入研究C++的理想机会。第5版涵盖了C++20的内容。

主编推荐

C 标准委员会主席Herb Sutter大力推荐

C 标准委员会成员Marc Gregoire执笔

国内知名C 大咖“程序喵大人”领衔翻译

获得国内C 社区李建忠、吴咏炜、高博、吴天明等专家和钱能、朱燕民、郭龙江、王雷等教授的一致推荐

 

拥抱C 的深度和复杂性,挖掘更多可能
  众所周知,C 难以掌握,但其广泛的功能使其成为游戏和商业软件应用程序中常用的语言。即使是有经验的用户通常也不熟悉许多高级特性,但C 20的发布提供了探索该语言全部功能的绝佳机会。《C 20高级编程(第5版)》为C 的必要内容提供了一个代码密集型、面向解决方案的指南,包括版本中的工具和功能。本书包含面向现实世界编程的实用指导,是程序员深入研究C 的理想机会。第5版涵盖了C 20的内容。


【内容简介】

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP