返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • C++ Templates(第2版) 中文版
  • 新华书店正版
    • 作者: [美] 戴维·范德沃德(David Vandevoorde) [德] 尼古拉 M. 约祖蒂斯(Nicolai M. Josuttis) [美] 道格拉斯·格雷戈(Douglas Gregor)著 | | 何荣华 王文斌 张毅峰 杨文波译
    • 出版社: 人民邮电出版社
    • 出版时间:2024-01-01 00:00:00
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    文轩网图书旗舰店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

         https://product.suning.com/0070067633/11555288247.html

     

    商品参数
    • 作者: [美] 戴维·范德沃德(David Vandevoorde) [德] 尼古拉 M. 约祖蒂斯(Nicolai M. Josuttis) [美] 道格拉斯·格雷戈(Douglas Gregor)著| 何荣华 王文斌 张毅峰 杨文波译
    • 出版社:人民邮电出版社
    • 出版时间:2024-01-01 00:00:00
    • 版次:1
    • 印次:1
    • 印刷时间:2024-01-01
    • 页数:384
    • 开本:16开
    • 装帧:平装
    • ISBN:9787115601513
    • 国别/地区:中国
    • 版权提供:人民邮电出版社

    C++ Templates(第2版) 中文版

    作  者:(美)戴维·范德沃德,(德)尼古拉 M.约祖蒂斯,(美)道格拉斯·格雷戈 著 何荣华 等 译
    定  价:149.8
    出 版 社:人民邮电出版社
    出版日期:2024年01月01日
    页  数:644
    装  帧:平装
    ISBN:9787115601513
    主编推荐

    1.详细分析代码示例 本书通过丰富的带有注释的代码示例,覆盖C++11、C++14、C++17的语言特性,并描述了其内部工作原理。无论是初学者还是专业程序员,都能了解到本书所具有的宝贵价值。 2.科学合理的内容安排 3位经验丰富的C++开发人员将展示为什么、何时以及如何使用现代模板来构建更简洁、更快速、更有效、更易于维护的软件。 3.读者轻松愉快地学习 通过丰富的提示、注意等板块设计让读者轻松愉快地学会C++模板。 4.下载代码示例 本书提供可下载的代码示例,方便读者亲手实践。

    内容简介

    本书是一本全面介绍C++模板技术的图书,主要内容涵盖C++模板的基础概念、语言细节、编程技巧、高级应用以及实用示例等。本书针对C++11、C++14、C++17标准进行了内容更新,并对很多新语言特性(包括变量模板、泛型lambda、类模板参数推导等)给出详细解释。通过阅读本书,读者可以深入理解C++模板技术,掌握开发有效、简洁且易维护的软件的原因、时机和方法。 本书内容丰富,架构清晰,讲解翔实,适合对C++模板技术感兴趣的开发人员或爱好者阅读。

    作者简介

    David Vandevoorde是Edison Design Group公司的工程副总裁,负责设计公司C++编译器的关键功能。他是comp.lang.c++.moderated论坛的创办人之一,也是C++标准化的积极参与者。他拥有伦斯勒理工学院的计算机科学博士学位和硕士学位,以及布鲁塞尔自由大学的工程硕士学位。他的技术兴趣包括算法开发和培训。 Nicolai M. Josuttis是一名独立的系统架构师、技术经理、顾问和培训师,20多年来一直活跃在C++标准化领域。作为库工作组的成员,他特别关注普通开发人员的观点。他是《C++标准库(第2版)》等图书的作者。 Douglas Gregor是一名经验丰富的编译器开发人员,具有C++库设计背景。作为Boost的早期贡献者,他开发的多个库已成为C++标准的一部分。后来,他作为代码所有者负责开源Clang C++编译器的实施,直至完成对C++null

    精彩内容

    目录
    第一部分基础知识
    第1章函数模板2
    1.1函数模板初探2
    1.1.1定义模板2
    1.1.2使用模板3
    1.1.3两阶段编译4
    1.2模板实参推导简介5
    1.3多模板参数7
    1.3.1返回类型的模板参数7
    1.3.2推导返回类型8
    1.3.3返回类型为公共类型9
    1.4默认模板实参简介10
    1.5重载函数模板简介11
    1.6难道,我们不应该……16
    1.6.1传值还是传引用16
    1.6.2为什么不使用inline16
    1.6.3为什么不使用constexpr16
    1.7小结17
    第2章类模板18
    2.1类模板Stack的实现18
    2.1.1类模板的声明19
    2.1.2成员函数的实现20
    2.2类模板Stack的使用21
    2.3部分使用类模板22
    2.4友元简介24
    2.5类模板的特化25
    2.6偏特化26
    2.7默认类模板实参28
    2.8类型别名30
    2.9类模板实参推导32
    2.10模板化聚合体35
    2.11小结35
    第3章非类型模板参数36
    3.1非类型的类模板参数36
    3.2非类型的函数模板参数38
    3.3非类型模板参数的39
    3.4模板参数类型auto40
    3.5小结43
    第4章变参模板44
    4.1变参模板简介44
    4.1.1变参模板示例44
    4.1.2变参和非变参模板的重载45
    4.1.3sizeof...运算符46
    4.2折叠表达式46
    4.3变参模板应用48
    4.4变参类模板和变参表达式49
    4.4.1变参表达式49
    4.4.2变参索引50
    4.4.3变参类模板51
    4.4.4变参推导指引52
    4.4.5变参基类和using关键字52
    4.5小结54
    第5章基本技巧55
    5.1关键字typename55
    5.2零初始化56
    5.3使用this->58
    5.4处理原始数组和字符串字面量的模板58
    5.5成员模板60
    5.5.1.template构造65
    5.5.2泛型lambda和成员模板65
    5.6变量模板66
    5.7模板的模板参数简介68
    5.8小结73
    第6章移动语义和enable_if<>74
    6.1完美转发简介74
    6.2特殊成员函数模板77
    6.3通过std::enable_if<>禁用模板79
    6.4使用enable_if<>81
    6.5使用概念简化enable_if<>表达式84
    6.6小结85
    第7章传值还是传引用86
    7.1传值86
    7.2传引用88
    7.2.1传递常量引用88
    7.2.2传递非常量引用90
    7.2.3传递转发引用91
    7.3使用std::ref()和std::cref()92
    7.4处理字符串字面量和原始数组94
    7.5处理返回值95
    7.6推荐的模板参数声明方法97
    7.7小结99
    第8章编译期编程100
    8.1模板元编程100
    8.2使用constexpr计算102
    8.3偏特化的执行路径选择103
    8.4SFINAE104
    8.5编译期if简介108
    8.6小结110
    第9章在实践中使用模板111
    9.1包含模型简介111
    9.1.1链接器错误111
    9.1.2头文件中的模板112
    9.2模板和inline113
    9.3预编译头文件114
    9.4破译大篇错误信息115
    9.5后记122
    9.6小结122
    第10章模板基本术语123
    10.1是“类模板”还是“模板类”123
    10.2替换、实例化和特化123
    10.3声明和定义124
    10.4单一定义规则126
    10.5模板实参和模板形参126
    10.6小结127
    第11章泛型库128
    11.1可调用对象128
    11.2实现泛型库的其他工具133
    11.3完美转发临时变量136
    11.4作为模板参数的引用137
    11.5推迟估算140
    11.6关于泛型库的思考141
    11.7小结141
    第二部分深入模板
    第12章深入模板基础144
    12.1参数化的声明144
    12.2模板参数150
    12.3模板实参156
    12.4变参模板163
    12.5友元170
    12.6后记174
    第13章模板中的名称175
    13.1名称的分类175
    13.2名称查找177
    13.3解析模板183
    13.4继承和类模板193
    13.5后记196
    第14章实例化198
    14.1按需实例化198
    14.2延迟实例化200
    14.3C++的实例化模型203
    14.4实现方案207
    14.5显式实例化212
    14.6编译期的if语句215
    14.7标准库216
    14.8后记217
    第15章模板实参推导218
    15.1推导的过程218
    15.2推导的上下文220
    15.3特殊的推导情况221
    15.4初始化列表222
    15.5参数包223
    15.6右值引用225
    15.7SFINAE230
    15.8推导的233
    15.9显式函数模板参数236
    15.10基于初始化器和表达式的推导238
    15.11别名模板254
    15.12类模板参数推导255
    15.13后记262
    第16章特化与重载264
    16.1当“泛型代码”不是特别适用的时候264
    16.2重载函数模板267
    16.3显式特化276
    16.4类模板偏特化284
    16.5变量模板偏特化287
    16.6后记287
    第17章未来方向289
    17.1宽松的typename规则289
    17.2广义非类型模板参数290
    17.3函数模板的偏特化292
    17.4命名模板实参简介293
    17.5重载类模板294
    17.6中间包扩展的演绎294
    17.7void的规则化295
    17.8模板的类型检查296
    17.9反射元编程297
    17.10包管理工具298
    17.11模块299
    第三部分模板与设计
    第18章模板的多态302
    18.1动多态302
    18.2静多态304
    18.3动多态与静多态306
    18.4使用概念308
    18.5新形式的设计模式309
    18.6泛型程序设计310
    18.7后记312
    第19章特征的实现314
    19.1一个实例:累加一个序列314
    19.1.1固定特征314
    19.1.2值特征317
    19.1.3参数化特征321
    19.2特征、policy及policy类321
    19.3类型函数326
    19.4基于SFINAE的特征339
    19.5IsConvertibleT349
    19.6检测成员351
    19.7其他特征技术359
    19.8类型分类366
    19.9policy特征373
    19.10在标准库中376
    19.11后记377
    第20章类型属性重载379
    20.1算法特化379
    20.2标签调度380
    20.3启用/禁用函数模板382
    20.4类特化388
    20.5实例化安全模板392
    20.6在标准库中396
    20.7后记396
    第21章模板与继承398
    21.1空基类优化398
    21.2奇妙递归模板模式402
    21.3混入413
    21.4命名模板实参416
    21.5后记419
    第22章桥接静多态与动多态421
    22.1函数对象、指针以及std::function<>421
    22.2泛化的函数指针423
    22.3桥接接口425
    22.4类型擦除426
    22.5可选的桥接427
    22.6性能考虑429
    22.7后记429
    第23章元编程431
    23.1现代C++元编程的状况431
    23.2反射元编程的维度437
    23.3递归实例化的代价438
    23.4计算完备性441
    23.5递归实例化还是递归模板实参441
    23.6枚举值还是静态常量442
    23.7后记443
    第24章类型列表446
    24.1解剖一个类型列表446
    24.2类型列表算法448
    24.3非类型类型列表459
    24.4使用包扩展来优化算法462
    24.5cons风格的类型列表463
    24.6后记465
    第25章元组466
    25.1基础元组设计466
    25.2基础元组运算469
    25.3元组算法471
    25.4展开元组480
    25.5优化元组480
    25.6元组索引485
    25.7后记487
    第26章可辨识联合体489
    26.1存储简介490
    26.2设计491
    26.3值的查询与提取494
    26.4元素初始化、赋值和析构495
    26.5访问者500
    26.6variant的初始化和赋值505
    26.7后记508
    第27章表达式模板510
    27.1临时变量和割裂的循环510
    27.2在模板实参中对表达式编码514
    27.3表达式模板的性能与局限524
    27.4后记524
    第28章调试模板527
    28.1浅层实例化527
    28.2静态断言529
    28.3原型530
    28.4追踪器532
    28.5预言机535
    28.6后记536
    附录A单一定义规则537
    A.1编译单元537
    A.2声明和定义538
    A.3单一定义规则的细节539
    附录B值类别545
    B.1传统的左值和右值545
    B.2C++11值类别546
    B.3使用decltype检查值类别549
    B.4引用类型549
    附录C重载解析551
    C.1何时应用重载解析551
    C.2简化过的重载解析552
    C.3重载的细节556
    附录D标准库类型实用程序564
    D.1使用类型特征564
    D.2基本和复合类型类别567
    D.3类型属性和操作572
    D.4类型构造589
    D.5其他特征593
    D.6组合类型特征595
    D.7其他工具596
    附录E概念598
    E.1使用概念598
    E.2定义概念600
    E.3约束的重载602
    E.4概念小提示604
    术语表607

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购