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

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

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

  • 全新正版C++入门经典:英文版9787302582076清华大学出版社
    • 作者: 沃特·萨维奇著 | 沃特·萨维奇编 | 沃特·萨维奇译 | 沃特·萨维奇绘
    • 出版社: 清华大学出版社
    • 出版时间:2020-05
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    如梦图书专营店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

    商品参数
    • 作者: 沃特·萨维奇著| 沃特·萨维奇编| 沃特·萨维奇译| 沃特·萨维奇绘
    • 出版社:清华大学出版社
    • 出版时间:2020-05
    • 版次:1
    • 印次:1
    • 字数:1696000
    • 页数:1116
    • 开本:32开
    • ISBN:9787302582076
    • 版权提供:清华大学出版社
    • 作者:沃特·萨维奇
    • 著:沃特·萨维奇
    • 装帧:平装
    • 印次:1
    • 定价:158.00
    • ISBN:9787302582076
    • 出版社:清华大学出版社
    • 开本:32开
    • 印刷时间:暂无
    • 语种:暂无
    • 出版时间:2020-05
    • 页数:1116
    • 外部编号:11246290
    • 版次:1
    • 成品尺寸:暂无

    目 录
    章 计算机和C++编程入门 1
    1.1 计算机系统 2
    硬件 2
    软件 5
    高级语言 6
    编译器 7
    历史回顾 9
    1.2 编程和问题求解 9
    算法 10
    程序设计 11
    面向对象编程 12
    软件生命周期 12
    1.3 C++入门 13
    C++语言的起源 13
    一个C++示范程序 14
    陷阱:在中错误地使用斜杠 17
    编程提示:输入和输出语法 17
    简单C++程序的布局 17
    陷阱:在include的文件名前错误地添加一个空格 19
    编译和运行C++程序 19
    陷阱:编译C++11程序 19
    编程提示:让程序运行起来 20
    1.4 测试和调试 22
    各种程序错误 22
    陷阱:错误地定程序正确
    小结 24
    自测题 25
    编程练习 26
    编程项目 27
    第2章 C++基础知识 29
    2.1 变量和赋值 30
    变量 30
    名称:标识符 32
    变量声明 33
    赋值语句 34
    陷阱:未初始化的变量 35
    编程提示:使用有意义的名称 36
    2.2 输入和输出 37
    使用cout进行输出 37
    include预编译指令和命名空间 38
    转义序列 39
    编程提示:用或endl终止每一个程序 40
    格式化带小数点的数字 41
    用cin进行输入 42
    设计输入和输出 43
    编程提示:I/O中的换行 43
    . 数据类型和表达式 44
    int类型和double类型 44
    数值类型 45
    C++11类型 46
    char类型 47
    bool类型 48
    string类简介 48
    类型的兼容 49
    算术操作符和表达式 50
    陷阱:除法中的整数 52
    更多赋值语句 53
    2.4 简单控制流程 54
    一个简单的分支机制 54
    陷阱:连续的不等式 58
    陷阱:该用==的时候用了= 58
    复合语句 59
    简单的循环机制 61
    递增操作符和递减操作符 63
    编程实例:余额 64
    陷阱:循环 65
    2.5 程序风格 67
    缩进 67
    注释 67
    为常量命名 69
    小结 71
    自测题 72
    编程练习 75
    编程项目 76
    第3章 更多的控制流程 81
    3.1 使用布尔表达式 82
    布尔表达式求值 82
    陷阱:将布尔表达式转换成int值 85
    枚举类型(选读) 87
    3.2 多路分支 87
    嵌套语句 88
    编程提示:在嵌套语句中使用花括号 88
    多路if-else语句 90
    编程实例:州收入税 91
    switch语句 94
    陷阱:忘记在switch语句中添加break 96
    为菜单使用switch语句 97
    代码块 98
    陷阱:疏忽局部变量 100
    3.3 C++循环语句详解 101
    while语句回顾 101
    再论递增操作符和递减操作符 102
    for语句 104
    陷阱:for语句中多余的分号 108
    应该使用哪种循环 108
    陷阱:未初始化的变量和循环 110
    break语句 110
    陷阱:嵌套循环中的break语句 111
    3.4 设计循环 111
    求和与求乘积的循环 112
    终止循环 113
    嵌套循环 115
    调试循环 116
    小结 119
    自测题 120
    编程练习 1
    编程项目 124
    第4章 过程抽象和返回值的函数 129
    4.1 自顶向下设计 130
    4.2 预定义函数 130
    使用预定义函数 131
    随机数生成 134
    强制类型转换 135
    强制类型转换的古老形式 137
    陷阱:整数除法丢弃了小数部分 137
    4.3 程序员自定义函数 138
    函数定义 138
    返回布尔值的函数 142
    另一种形式的函数声明 142
    陷阱:实参顺序错误 143
    函数定义语法小结 144
    再论函数定义的位置 144
    编程提示:在分支语句中使用函数调用 145
    4.4 过程抽象 146
    黑盒的比喻 146
    编程提示:选择形参名称 147
    编程提示:嵌套循环 148
    案例分析:购买比萨 150
    编程提示:使用伪代码 154
    4.5 作用域和局部变量 155
    函数如同小程序 155
    编程实例:豌豆试验田 157
    全局常量和全局变量 157
    传值形参是局部变量 158
    块作用域 160
    再论命名空间 161
    编程实例:阶乘函数 163
    4.6 重载函数名称 164
    重载入门 164
    编程实例:购买比萨(修订版) 166
    自动类型转换 168
    小结 170
    自测题 171
    编程练习 173
    编程项目 174
    第5章 用函数完成所有子任务 177
    5.1 void函数 178
    void函数的定义 178
    编程实例温度换算 180
    void函数中的return语句 181
    5.2 传引用参数 182
    初探传引用调用 182
    传引用调用详解 184
    编程实例:swapValues函数 187
    混合的参数列表 188
    编程提示:应该使用哪种参数 189
    陷阱:疏忽造成的局部变量 190
    5.3 使用过程抽象 192
    在函数中调用函数 192
    前条件和后条件 193
    案例分析:超市定价系统 194
    5.4 测试和调试函数 198
    存根和驱动程序 198
    5.5 常规调试技术 201
    不抱成见 201
    检查常见错误 202
    定位错误 202
    assert宏 203
    小结 205
    自测题 206
    编程练习 208
    编程项目 209
    第6章 I/O流——对象和类入门 213
    6.1 流和基本文件I/O 214
    为什么要用文件来I/O 215
    文件I/O 215
    类与对象入门 218
    编程提示:检查文件成功打开 219
    文件I/O技术 222
    追加到文件(选读) 2
    文件名作为输入(选读) 225
    6.2 流I/O工具 227
    用流函数格式化输出 227
    操纵元 0
    流作为函数实参 2
    编程提示:检查文件尾
    命名空间的问题 4
    编程实例:整理文件格式 5
    6.3 字符I/O
    get和put成员函数
    putback成员函数(选读)
    编程实例:检查输入
    陷阱:输入中不期而遇的 241
    编程实例:另一个newLine函数 242
    函数的默认实参(选读) 243
    eof成员函数 246
    编程实例:编辑文本文件 247
    预定义字符函数 249
    陷阱:toupper和tolower返回值 250
    小结 252
    自测题 253
    编程练习 257
    编程项目 258
    第7章 数组 263
    7.1 数组入门 264
    声明和引用数组 264
    编程提示:为数组使用for循环 266
    陷阱:数组索引总是从零开始 266
    编程提示:为数组长度使用已定义常量 266
    数组在内存中的表示 267
    陷阱:数组索引越界 268
    初始化数组 269
    编程提示:C++11基于范围的for语句 270
    7.2 函数中的数组 272
    索引变量作为函数参数 272
    整个数组作为函数参数 274
    const参数修饰符 276
    陷阱:const参数修饰符的使用不一致 277
    返回数组的函数 278
    案例分析:产量图 278
    7.3 数组编程 287
    部分填充数组 287
    编程提示:不要吝啬形参 289
    编程实例:搜索数组 290
    编程实例:数组排序 291
    编程实例:冒泡排序 294
    7.4 多维数组 297
    多维数组基础 297
    多维数组参数 298
    编程实例:二维打分程序 299
    陷阱:在数组索引之间使用逗号 302
    小结 303
    自测题 304
    编程练习 306
    编程项目 307
    第8章 字符串和向量 315
    8.1 字符串的数组类型 316
    C字符串值和C字符串变量 317
    陷阱:为C字符串使用=和== 319
    中的函数 321
    陷阱:使用strcpy复制C字符串越界 322
    C字符串输入和输出 324
    C字符串到数值的转换和可靠输入 326
    8.2 标准string类 330
    标准类string简介 330
    string类的I/O 332
    编程提示:getline的版本 334
    陷阱:混合使用cin>>变量;和getline 335
    用string类进行字符串处理 336
    编程实例:回文测试 338
    string对象和C字符串之间的转换 341
    字符串和数字之间的转换 342
    8.3 向量 342
    向量基础知识 342
    陷阱:使用方括号时超出向量长度 345
    编程提示:向量赋值具有良好行为 345
    效率问题 345
    小结 347
    自测题 348
    编程练习 349
    编程项目 350
    第9章 指针和动态数组 355
    9.1 指针 356
    指针变量 357
    基本内存管理 362
    陷阱:虚悬指针 362
    静态变量和自动变量 362
    编程提示:定义指针类型 363
    9.2 动态数组 364
    数组变量和指针变量 365
    创建和使用动态数组 366
    指针运算(选读) 370
    多维动态数组(选读) 371
    小结 373
    自测题 374
    编程练习 374
    编程项目 375
    0章 定义类 379
    10.1 结构 380
    用于异种数据的结构 380
    陷阱:结构定义中忘记添加分号 383
    结构作为函数参数 384
    编程提示:使用层次化结构 384
    对结构进行初始化 386
    10.2 类 388
    定义类和成员函数 388
    公共成员和私有成员 391
    编程提示:将所有成员变量设为私有 396
    编程提示:定义取值函数和赋值函数 397
    编程提示:将赋值操作符用于对象 398
    编程实例:BankAccount类(版本1) 398
    总结类的一些特征 402
    用于初始化的构造函数 403
    编程提示:总是包括默认构造函数 408
    陷阱:无参构造函数 409
    C++11的成员初始化器和构造函数委托 410
    10.3 抽象数据类型 411
    用于生成抽象数据类型的类 412
    编程实例:类的另一种实现 414
    10.4 继承 418
    派生类 418
    定义派生类 419
    小结 4
    自测题 424
    编程练习 428
    编程项目 428
    1章 类中的友元函数、重载操作符和数组 433
    11.1 友元函数 434
    编程实例:一个相等函数 434
    友元函数 436
    编程提示:定义取值函数和友元函数 438
    编程提示:同时使用成员函数和非成员函数 439
    编程实例:Money类(版本1) 439
    实现digitToInt(选读) 443
    陷阱:数字常量中的前置零 444
    const参数修饰符 445
    陷阱:修饰符const的用法不一致 447
    11.2 重载操作符 449
    重载操作符 449
    用于自动类型转换的构造函数 452
    重载一元操作符 453
    重载>>和<< 454
    11.3 数组和类 460
    类数组 460
    数组作为类成员 463
    编程实例:用于部分填充数组的类 463
    11.4 类和动态数组 465
    编程实例:字符串变量类 466
    析构函数 468
    陷阱:指针作为传值参数 469
    拷贝构造函数 471
    重载赋值操作符 474
    小结 477
    自测题 478
    编程练习 484
    编程项目 484
    2章 独立编译和命名空间 491
    12.1 独立编译 492
    ADT回顾 492
    案例分析:独立编译的DigitalTime类 493
    使用#ifndef 500
    编程提示:定义库 502
    12.2 命名空间 503
    命名空间和using预编译指令 503
    创建命名空间 504
    限定名称 506
    命名空间的微妙之处(选读) 507
    无名命名空间 508
    陷阱:混淆全局命名空间和无名命名空间 512
    小结 513
    自测题 514
    编程练习 515
    编程项目 516
    3章 指针和链表 517
    13.1 节点和链表 518
    节点 519
    ptr 521
    链表 522
    在表头插入节点 5
    陷阱:丢失节点 525
    搜索链表 526
    指针作为迭代器 528
    在列表中插入和删除节点 528
    陷阱:为动态数据结构使用赋值操作符 531
    链表的变体 531
    类构成的链表 533
    13.2 栈和队列 536
    栈 536
    编程实例:栈类 536
    队列 539
    编程实例:队列类 540
    小结 544
    自测题 545
    编程练习 546
    编程项目 547
    4章 递归 553
    14.1 面向任务的递归函数 554
    案例分析:垂直数字 555
    深入递归 559
    陷阱:无穷递归 560
    用于递归的栈 562
    陷阱:栈溢出 563
    递归与迭代 563
    14.2 面向值的递归函数 564
    要返回值的递归函数的常规形式 564
    编程实例:另一个求乘方函数 564
    14.3 递归思想 567
    递归设计技术 567
    案例分析:二叉搜索(递归思想示例) 569
    编程实例:递归成员函数 574
    小结 577
    自测题 578
    编程练习 581
    编程项目 581
    5章 继承 585
    15.1 继承基础 586
    派生类 588
    派生类中的构造函数 593
    陷阱:使用来自基类的私有成员变量 595
    陷阱:私有成员函数不会继承 596
    protected限定符 596
    重定义成员函数 598
    重定义与重载的比较 600
    访问重定义的基函数 601
    15.2 继承细节 602
    不继承的函数 602
    派生类中的赋值操作符和拷贝构造函数 602
    派生类中的析构函数 603
    15.3 多态 604
    晚期绑定 604
    C++虚函数 605
    虚函数和扩展类型兼容 609
    陷阱:不使用虚成员函数 612
    陷阱:试图对虚成员函数定义不齐全的类进行编译 612
    编程提示:使析构函数成为虚函数 613
    小结 615
    自测题 616
    编程练习 619
    编程项目 620
    6章 异常处理 627
    16.1 异常处理基础 628
    异常处理的简单例子 629
    定义自己的异常类 635
    多个throw块和catch块 636
    陷阱:首先捕捉较具体的异常 638
    编程提示:异常类可能很简单 638
    在函数中抛出异常 639
    异常规范 640
    陷阱:派生类中的异常规范 641
    16.2 用于异常处理的编程技术 642
    抛出异常的时机 642
    陷阱:未捕捉的异常 643
    陷阱:嵌套try-catch块 643
    陷阱:滥用异常 644
    异常类层次结构 644
    测试可用内存 644
    重新抛出异常 645
    小结 646
    自测题 647
    编程练习 647
    编程项目 649
    7章 模板 651
    17.1 用于算法抽象的模板 652
    函数模板 653
    陷阱:编译器的复杂 656
    编程实例:泛型排序函数 657
    编程提示:如何定义模板 660
    陷阱:为不恰当的类型使用模板 660
    17.2 用于数据抽象的模板 660
    类模板的语法 660
    编程实例:数组类 663
    小结 668
    自测题 669
    编程练习 671
    编程项目 671
    8章 标准模板库 675
    18.1 迭代器 676
    using声明 677
    迭代器基础 677
    编程提示:使用auto简化变量声明 681
    陷阱:编译器问题 681
    迭代器的种类 682
    常量和可变迭代器 684
    逆向迭代器 685
    种类的迭代器 687
    18.2 容器 687
    顺序容器 687
    陷阱:迭器和除元素 690
    编程提示:容器中的类型定义 691
    容器配接器stack和queue 691
    关联容器set和map 693
    编程提示:为容器使用初始化、基于范围的for和auto 698
    效率问题 699
    18.3 泛型算法 699
    运行时间和大O表示法 700
    容器访问运行时间 703
    不修改容器的算法 703
    会修改容器的算法 706
    set算法 707
    排序算法 708
    18.4 不断进化的C++ 708
    std::array 709
    正则表达式 710
    线程 713
    智能指针 717
    小结 722
    自测题 7
    编程练习 724
    编程项目 724
    附录A C++关键字 729
    附录B 操作符的优先级 730
    附录C ASCII字符集 731
    附录D 部分库函数 732
    附录E 内联函数 736
    附录F 重载数组索引方括号 737
    附录G this指针 738
    附录H 将操作符重载为成员操作符 740

    沃特·萨维奇(Walter Savitch),加州大学圣迭戈校区计算机科学与工程系荣誉退休教授1960年于加州大学伯克利校区获得博士,曾担任加州大学圣迭戈分校计算机科学系教授和认知科学跨学科博士项目主任。他在复杂理论和并行计算模型方面做出了重要的贡献,研究领域还包括形式语言理论和计算语言学等。他的编程语言教材(尤其是C++)深受师生欢迎。

    十余年的C++编程经典结构严谨、清晰,行文诙谐幽默,妙趣横生 80+技巧提示,30+生动有趣的编程实例 60+精彩视频,410+自测题,220+编程项目十余年,国内上百所高校普遍采用的编程经典十余年,国内上百所高校普遍采用的编程经典






    产品
















    适读人群 :可作为高校C++程序设计课程的教材,也适合自学。



    十余年的C++编程经典




    结构严谨、清晰,行文诙谐幽默,妙趣横生


    80+技巧提示,30+生动有趣的编程实例


    60+精彩,410+自测题,220+编程项目








    内容简介






      作为C++入门经典教材,《C++入门经典(0版 英文版)》结合作者多年的教学经验,清楚梳理出一个有利于教与学的结构体系,从各章开头的内览,到随处可见的自测题、小结框、编程提示和编程陷阱,再到章末的题、编程练程项目,由浅入深,从简到繁,可以帮初学者渐入佳境,逐步理解并掌握重要的编程概念。
      《C++入门经典(0版 英文版)》共18章,8个附录。在讲解C++基础知识之后,循序地引导读者深入函数、I/O流、类、控制流程、命名空间、数组、字符串、指针和动态数组、递归、模板、指针和链表、派生类、异常以及标准模板库。
      《C++入门经典(0版 英文版)》前几版被全国100多所高校选作C++程序设计课程的教材,很受师生欢迎。
      《C++入门经典(0版 英文版)》也适合自学,不同层次的知识点和测试练以帮读者以自己的节入美妙的C++编程世界。





    作者简介






      Walter Savitch,美国加州大学圣迭戈分校荣誉退休教授。拥有加州大学伯克利分校博士,曾担任加州大学圣迭戈分校计算机科学系教授和认知科学跨学科博士项目主任。他在复杂理论和并行计算模型方有贡献,其研究领括形式语言理论和计算语言学等。





    内页插图
















    目录












    前言/序言






      本书适合c+程序设计和计算机科学入门课程。不要求读者有任何编程经验,也不要求掌握除中学代数之外的任何数学知识。
      本书前几版的读者请阅读关于0版修订内容的小节,前言其余内容可略过。新读者请阅读前言的内容以把握本书脉络。0版修订内容
      0版采用和第9版相同的体例。保留第9版内容,行了以下修订。
      ·统一采用cameICase拼写法,不再采用C风格的下划线连接。例如,set name改为setName。
      ·0章讨论了浅拷贝和深拷贝。
      ·2章和7章讨论了如何用头文件引入编译模板。
      ·8章讨论了C++td::array类、正则表达式、线程和智能指针。
      行了大量勘误和编辑,强调了文件I/O的方语更规范,更好地定义了封装,并不再讨论已在C++Il和更高版本中成为标准的一些东西。
      ·新增10个编程项目。
      ·新增5个讲解数达69个。这些讲解辅导学生解题和写程序,有于巩固对关键编程概念的掌握。如书中某个主题有对应的讲解,会出现一行特殊的注释(讲解:……)。
      用过第9版的教师可沿用以前的教案,几乎不需要任何改动。
      主题可以灵活排序
      本书允许教师自由安排教学顺序。为了演示这一灵活了两个额外的顺序。采用任何顺序都不会影响学贯。为了在改变顺序时确保这种连贯,可能需要移动个别小节而不是全章。但只有较大的、位置便利的小节才需移动。为了帮您根据需要自定义一个教学/阅读顺序,图P.1展示了一幅依赖图。另外,每章都有“预备知识”小节,解释学章的每一节之前需掌握的内容。
      重新排序1:提前学br />  为有效设计类,学生需要掌握一些基本工具,比如控制结构和函数定义。这些基础知识在章~第6章介绍。完成第6章后,学生可开始写自己的类了。如果想提前学相关知识,可像这样重新安排各章顺序。
      ·基础知识章~第6章。这6章介绍控制结构、函数定义和基本文件I/O。第3章介绍几种额外的控制结构,想提前学考虑推迟这一章。
      ·类和命名空间0章、1章的11.1节和11.2节、2章。这些章节介绍了如何定义类、友元、重载操作符和命名空间。
      ·数组、字符串和向量第7章和第8章。
      ·指针和动态数组第9章。
      ·类中的数组1章的11.3节和11.4节。
      ·继承5章。
      ·递归4章(可推迟)。
      ·指针和链表3章。
      可能还要用到以下各章的部分内容。
      ·异常处理6章。
      ·模板7章。
      ·标准模板库8章。






    "十余年的C++编程经典 结构严谨、清晰,行文诙谐幽默,妙趣横生 80+技巧提示,30+生动有趣的编程实例 60+精彩视频,410+自测题,220+编程项目 "

    售后保障

    最近浏览

    猜你喜欢

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

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

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

    查看我的收藏夹

    确定

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

    关闭

    抱歉,您暂无任性付资格

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