成功加入购物车

去购物车结算 X
白湘云书社
  • C++程序设计从入门到精通 9787302592372 雍俊海 清华大学出版社有限公司
图文详情

C++程序设计从入门到精通 9787302592372 雍俊海 清华大学出版社有限公司

举报

当天发货,全新正版书。新华书店集团直发。

  • 出版时间: 
  • 装帧:    平装
  • 开本:    16开
  • ISBN:  9787302592372
  • 出版时间: 
  • 装帧:  平装
  • 开本:  16开

售价 89.60 7.0折

定价 ¥128.00 

品相 全新

优惠 满包邮

优惠 满减券
    运费
    本店暂时无法向该地区发货

    延迟发货说明

    时间:
    说明:

    上书时间2024-05-19

    数量
    库存6
    微信扫描下方二维码
    微信扫描打开成功后,点击右上角”...“进行转发

    卖家超过10天未登录

    十四年老店
    店铺等级
    拍卖等级
    资质认证
    90天平均
    成功完成
    93.33% (249笔)
    好评率
    99.62%
    发货时间
    8.66小时
    地址
    北京市通州区
    • 商品详情
    • 店铺评价
    立即购买 加入购物车 收藏
    手机购买
    微信扫码访问
    • 商品分类:
      童书
      货号:
      11355660
      商品描述:
      作者简介
      雍俊海  清华大学软件学院教授、博士生导师和学术委员会主任,计算机辅助设计、图形学与可视化研究所所长,计算机学会会士,中国工业技术软件化产业联盟CAD专业技术委员会副主任,计算机学会计算机辅助设计与图形学专业委员会常委,全国技术产品文件标准化技术委员会委员,曾任IEEE形状造型和CAD/Graphics等多个国际会议程序委员会联合主席,国际期刊《Computers & Graphics》的Associate Editor。主要研究方向为计算机辅助设计软件理论与技术。获得过国家杰出青年科学基金、全国优秀博士论文奖和国际Elsevier Outstanding Service Award等荣誉。在《TOG》和《CAD》等期刊与会议上发表约200篇学术论文,负责或参与制订17项国家标准,出版了《C程序设计》等8本书,其中教材《Java程序设计教程》获教育部普通高等教育精品教材、北京高等教育精品教材和首届中国大学出版社图书奖一等奖等多个奖励。另外,还编写了生动有趣的个人科研科普专著《清华教授的小课堂:魔方真好玩》,减少了入门级复原魔方所需的转动次数。这本魔方科普专著入选了教育部2019年全国中小学图书馆(室)推荐书目。

      目录
      C++程序设计从入门到精通
      目    录
      ·PAGE  X·

      ·PAGE  XI· 



      目  录
      第1章  绪论 1
      1.1  C++语言简介 1
      1.2  C++入门程序 4
      1.2.1  常规项目操作 4
      1.2.2  C++类C部分经典入门程序 5
      1.2.3  C++类C部分结构化入门程序 11
      1.2.4  C++面向对象部分入门程序 15
      1.3  本章小结 17
      1.4  习题 17
      1.4.1  练习题 17
      1.4.2  思考题 18
      第2章  结构化程序设计 19
      2.1  预备知识 19
      2.1.1  标识符 19
      2.1.2  关键字和保留字 21
      2.1.3  文件包含语句 23
      2.1.4  宏定义与条件编译 24
      2.2  数据类型 26
      2.2.1  变量定义和声明 27
      2.2.2  布尔类型 28
      2.2.3  整数系列类型 28
      2.2.4  字符系列类型 30
      2.2.5  浮点数类型 32
      2.2.6  枚举类型 34
      2.2.7  数组类型和基于数组的字符串 36
      2.2.8  指针类型与动态数组 39
      2.2.9  左值引用与右值引用 42
      2.2.10  自动推断类型auto 43
      2.2.11  类型别名定义typedef 44
      2.2.12  常量属性const 45
      2.3  运算 46
      2.3.1  算术运算 48
      2.3.2  关系运算 50
      2.3.3  逻辑运算 50
      2.3.4  位运算 50
      2.3.5  赋值类运算 53
      2.3.6  条件运算 53
      2.3.7  其他运算 54
      2.4  控制结构 54
      2.4.1  if语句和if-else语句 55
      2.4.2  switch语句 57
      2.4.3  for语句 60
      2.4.4  while语句 64
      2.4.5  do-while语句 65
      2.4.6  continue语句 65
      2.4.7  break语句 67
      2.5  模块划分 68
      2.5.1  函数基础 68
      2.5.2  主函数main 77
      2.5.3  函数递归调用 78
      2.5.4  函数指针类型 81
      2.5.5  关键字static 83
      2.5.6  模块划分的原则与过程 85
      2.6  本章小结 89
      2.7  习题 89
      2.7.1  练习题 89
      2.7.2  思考题 92
      第3章  面向对象程序设计基础 93
      3.1  类与对象 93
      3.1.1  类声明与类定义基础 94
      3.1.2  成员变量 94
      3.1.3  位域 96
      3.1.4  类对象与实例对象 97
      3.1.5  构造函数 101
      3.1.6  析构函数 108
      3.1.7  成员函数 111
      3.2  继承性 114
      3.2.1  基本定义 114
      3.2.2  父子类实例对象之间的兼容性 121
      3.2.3  基本原则 124
      3.2.4  虚拟继承 128
      3.2.5  初始化单元和委托构造函数 133
      3.2.6  构造函数与析构函数的执行顺序 135
      3.3  封装性 146
      3.3.1  成员的访问方式 147
      3.3.2  继承方式和访问方式 152
      3.3.3  在继承中的全局类 156
      3.3.4  友元 160
      3.4  多态性 169
      3.4.1  函数重载(静态多态性) 169
      3.4.2  默认函数参数值 175
      3.4.3  运算符重载 177
      3.4.4  函数覆盖(动态多态性) 183
      3.5  关键字this 193
      3.6  函数调用和关键字const 198
      3.6.1  函数形式参数与调用参数 198
      3.6.2  非静态成员函数本身的const常量属性 202
      3.6.3  函数的返回数据类型 204
      3.7  面向对象程序设计的核心思路 207
      3.8  本章小结 217
      3.9  习题 218
      3.9.1  练习题 218
      3.9.2  思考题 224
      第4章  共用体 225
      4.1  共用体的定义与格式 225
      4.2  在共用体中调用成员变量的构造函数与析构函数 228
      4.3 本章小结 235
      4.4 习题 235
      4.4.1 练习题 235
      4.4.2 思考题 235
      第5章  异常处理 236
      5.1  异常的抛出与捕捉 236
      5.2  浅拷贝和深拷贝 247
      5.2.1  浅拷贝 247
      5.2.2  深拷贝 251
      5.3  避免内存泄漏 254
      5.3.1  含有内存泄漏的例程 254
      5.3.2  避开内存泄漏的方案 256
      5.4  本章小结 259
      5.5  习题 259
      5.5.1  练习题 259
      5.5.2  思考题 261
      第6章  模板与标准模板库 262
      6.1  自定义函数模板 262
      6.2  自定义类模板 267
      6.3  向量类模板vector 274
      6.3.1  向量的构造函数、长度和容量 274
      6.3.2  向量的迭代器 279
      6.3.3  改变向量长度与容量 282
      6.3.4  插入与删除元素 283
      6.3.5  向量赋值与比较 287
      6.4  集合类模板set 292
      6.4.1  仿函数 292
      6.4.2  集合的构造函数和迭代器 294
      6.4.3  修改集合内容的成员函数 301
      6.4.4  用于查询的集合成员函数 306
      6.4.5  集合赋值与比较 311
      6.5  排序函数模板sort 319
      6.6  本章小结 323
      6.7  习题 324
      6.7.1  练习题 324
      6.7.2  思考题 325
      第7章  字符串处理 326
      7.1  输出单个字符 326
      7.2  基于数组的窄与宽字符串转换 328
      7.3  字符串类 342
      7.3.1  字符串的构造函数 343
      7.3.2  字符串的容量与长度 346
      7.3.3  获取字符串的内容与子串 350
      7.3.4  字符串赋值与比较大小 353
      7.3.5  字符串迭代器 360
      7.3.6  插入与删除 366
      7.3.7  查找与替换以及交换 377
      7.3.8  基于字符串类的超长整数案例 406
      7.4  本章小结 412
      7.5  习题 413
      7.5.1  练习题 413
      7.5.2  思考题 415
      第8章  标准输入输出与文件处理 416
      8.1  标准输入输出 416
      8.1.1  出入流类ios 417
      8.1.2  输入流类istream 422
      8.1.3  输出流类ostream 436
      8.1.4  格式控制 443
      8.2  文件流 451
      8.2.1  只读文件流类ifstream 452
      8.2.2  只写文件流类ofstream 464
      8.2.3  读写文件流类fstream 469
      8.3  习题 478
      8.3.1  练习题 478
      8.3.2  思考题 480
      第9章  MFC图形界面程序设计 482
      9.1  MFC程序总述 483
      9.2  单文档程序设计 484
      9.3  图形绘制 504
      9.4  多文档程序设计 517
      9.5  基于对话框的MFC程序设计 539
      9.6  基于功能区(Ribbon)的MFC程序设计 548
      9.7  本章小结 562
      9.8  习题 563
      9.8.1  练习题 563
      9.8.2  思考题 566
      第10章  设计模式 567
      10.1  单体模式 568
      10.1.1  传统的单体模式解决方案 568
      10.1.2  无内存泄漏的单体模式解决方案 571
      10.2  适配器模式 575
      10.2.1  接口类和接口适配器类 576
      10.2.2  对象适配器模式 578
      10.2.3  类适配器模式 582
      10.3  策略模式 586
      10.4  工厂方法模式 590
      10.5  本章小结 601
      10.6  习题 602
      10.6.1  练习题 602
      10.6.2  思考题 603
      第11章  编程规范 604
      11.1  命名空间 604
      11.2  代码组织规范 610
      11.2.1  文件组织规范 610
      11.2.2  头文件内容规范 611
      11.2.3  源文件内容规范 614
      11.3  内联函数 617
      11.4  命名规范 627
      11.4.1  文件名 629
      11.4.2  命名空间、类型命名和关键字typedef 629
      11.4.3  函数、函数模板和变量的命名 630
      11.4.4  枚举成员、宏和只读变量的命名 631
      11.4.5  本书所用的命名规范 632
      11.5  排版规范 633
      11.5.1  制表符与缩进 634
      11.5.2  空白行与空格 636
      11.5.3  行数与每行字符数 636
      11.6  语句规范 638
      11.6.1  函数相关的语句规范 639
      11.6.2  类型与变量相关的语句规范 640
      11.6.3  简洁且无歧义的表达式 642
      11.6.4  循环语句与空语句 646
      11.6.5  给语句添加注释 646
      11.7  本章小结 647
      11.8  习题 648
      11.8.1  练习题 648
      11.8.2  思考题 650
      第12章  程序调试与测试 651
      12.1  程序调试 651
      12.1.1  断言 651
      12.1.2  设置断点与查看即时信息 653
      12.1.3  查看函数堆栈 656
      12.1.4  编写调试日志文件程序 658
      12.2  程序测试 662
      12.2.1  程序测试基本概念 663
      12.2.2  穷举测试 664
      12.2.3  黑盒测试 674
      12.2.4  白盒测试 679
      12.3  本章小结 682
      12.4  习题 682
      12.4.1  练习题 682
      12.4.2  思考题 684
      附录A  例程的索引 685
      附录B  函数、宏和运算符的索引 688
      参考文献 697
      _x00C_

      内容摘要
           第3 章面向对象程序设计基 础 如图3-1 所示,在刚出现计算机编程时,由于受计算机内存和硬盘容量等的,要 用计算机程序解决实际问题需要超高的技巧。那时只有少数的科学家与工程师拥有机会并 且具备编程能力。那时的代码需要精心设计,让代码尽可能短小;否则,当时的计算机根 本就无法加载。因此,那时的代码晦涩难懂,人们很难判断程序的正确性,而且只能在语 句层次上复用。这些都引发了 设计使得普通大众也能够编写程序。最早的结构化程序设计是面向过程程序设计,以函数 软件代码危机——软件代码极其难写,而且软件运行结果的 可信度也很差。后来,结构化程序设计的提出使得这种情况得到了很大改善。结构化程序 为单位进行代码编写与复用;除此之外,没有统一的代码组织模式。随着程序规模的扩大, 人们对程序代码的复用性、灵活性和扩展性不断地提出更高的需求,并且不断地探索相应 的解决方案。面向对象程序设计正是在这样的背景下提出的,它也是一种结构化程序设计, 在面向过程程序设计中引入类的概念,从而方便代码的组织。面向对象程序设计模仿人类 社会组织代码,并做了大量的简化和抽象。因此,采用面向对象程序设计编写出来的代码 远没有人类社会那么复杂。不过,对象的范围却扩大了很多,可以构造出很多在现实生活 中并不存在的对象。代码的世界就像童话世界那样丰富多彩,各种对象千奇百怪。在面向 对象程序设计中,根据类与类之间的继承关系, 其互相配套的功能函数组织在一起,代码的使用与复用变得更加有序化。程序的扩展性与 规模得到了进一步的提升。 代码主要是以类为单位进行编写与复用的。 所有的类可以组成森林的结构。因此,可以采用森林模式进行代码组织。类将数据以及与 图3-1 程序设计方法与程序代码复用粒度的历史变迁 3.1 类 与 对 象 C++面向对象程序设计以类、模板和共用体作为构造程序的主要基本单位,其中最主 要和最核心的是类。本章只涉及类,不考虑共用体等其他数据类型。如果只考虑与类相关 C++程序设计从入门到精通 的对象,那么这种对象依赖于类而存在,即在面向对象程序设计中,对象无法离开类而独 立存在。本节只介绍类与对象的基本定义以及基础性的性质,其他属性将在后续各节逐步 展开介绍。 3.1.1 类声明与类定义基础 定义类实际上是在定义新的数据类型。类的定义与声明通常都是在头文件中。类定义 的基本格式如下: class 类名 { 类成员声明或定义序列 }; 在上面格式中,行代码称为类的头部,其他代码称为类的类体。上面定义格式不考虑 类的继承关系,关于继承性将在第3.2 节介绍。 ..注意事项..: (1)类定义是以分号结束的。因此,在编写类定义时,不要遗忘最后这个分号。 (2)在同一个程序中,不允许定义2 个类,它们拥有相同的类名。 (3)即使2 个类拥有接近相同的结构与类成员,只要它们的类名不同,这两个类就是2 种不同的 类型。 类的所有成员都必须在类体内声明或定义。换句话说,除了在类体内部,无法在任何 其他地方给类增添新的成员。类的成员主要包括成员变量和成员函数。这些内容将在后面 的小节介绍。 ..小甜点..: 在本章中将会频繁出现访问这个术语,它的大致含义是使用或者查看。访问成员变量通常指的是 读取或修改成员变量的值。访问函数通常指的是调用函数。访问类通常指的是使用这个类,例如,用 这个类定义变量,或者定义这个类的子类,或者调用这个类的成员函数,或者读取或修改这个类的成 员变量的值。 类声明的格式如下: class 类名称; 类声明不是类定义。类声明只表明这个类将在其他地方定义。因为仅仅依据类声明无 法知道这个类包含哪些成员,所以对于在类声明之后并且在类定义之前的程序代码而言, 这个类都称为不完整的类。对于正在定义 // 11 // 12 // 13 // 14 上面的代码由2 个源程序代码文件组成。在源文件“CP_AMain.cpp ”中,第7 行代码 通过new 运算生成了具有2 个实例对象的动态数组,并将动态数组的首地址赋值给指针变 量p。第8 行和第9 行代码分别给这2 个实例对象的成员变量赋值,第10 行和第11 行代 码分别输出这2 个实例对象的成员变量的值。最后,一定要通过带有“[ ]”的delete 运算 将动态数组的内存释放,如第12 行代码所示。 ..小甜点..: (1)通过类的实例对象也可以访问隶属于类对象的静态成员。 (2)虽然通过实例对象与直接通过类名访问类对象的静态成员具有相同的效果,但是从编程规范 的角度上讲,仍然提倡直接通过类名访问类对象的静态成员,而不提倡通过实例

      主编推荐
      "重点突出:本书不仅在内容上抓住并突出C++程序设计的重点和核心本质,而且在形式上通过加粗加框的方式突出各部分内容以及各个概念的中心词。 准确严谨:本书努力去除现有C++现有相关文献资料当中的浮华与众多的错误,内容准确严谨,并且详细讲解如何进行C++程序等价类划分,提高程序测试的有效性。 内容新颖:本书内容紧扣近期新靠前标准和软件产业近期新实际需求,在C++面向对象程序设计、图形界面程序设计、设计模式和编程规范等方面具有鲜明特色。 例程丰富:本书提供了109个例程和众多的示例性代码,采用简明方式揭示C++程序设计本质之处,通过翔实例程和例句展现C++编程思想,方便入门与自学。"

      精彩内容
      本书讲解C++程序设计知识及其编程方法,包括结构化程序设计、面向对象程序设计、共用体、异常处理、模板与标准模板库、字符串处理、标准输入输出与文件处理、MFC图形界面程序设计、设计模式、编程规范、程序调试与测试等内容,并且每章都附有习题。本书的章节编排与内容以人们学习与认知过程为基础,紧扣最新国际标准,与公司的实际需求相匹配。本书采用特殊字体突出中心词,以期读者在轻松和欢乐之中迅速了解与掌握C++程序设计的知识和方法,并应用到实践中去。
        本书内容丰富易学,而且提供丰富例程和例句,既可以作为高等学校C++程序设计和面向对象程序设计等课程的基础教材,也可以作为需要使用C++语言的工程人员和科技工作者的自学参考书。

      媒体评论
      重点突出:本书不仅在内容上抓住并突出C++程序设计的重点和核心本质,而且在形式上通过加粗加框的方式突出各部分内容以及各个概念的中心词。
      准确严谨:本书努力去除现有C++现有相关文献资料当中的浮华与众多的错误,内容准确严谨,并且详细讲解如何进行C++程序等价类划分,提高程序测试的有效性。
      内容新颖:本书内容紧扣最新国际标准和软件产业最新实际需求,在C++面向对象程序设计、图形界面程序设计、设计模式和编程规范等方面具有鲜明特色。
      例程丰富:本书提供了109个例程和众多的示例性代码,采用简明方式揭示C++程序设计本质之处,通过翔实例程和例句展现C++编程思想,方便入门与自学。
      基于最新C++标准,重点突出,准确严谨,内容新颖,例程丰富,揭示C++程序设计本质,展现C++编程思想

      配送说明

      ...

      相似商品

      为你推荐

    孔网啦啦啦啦啦纺织女工火锅店第三课

    开播时间:09月02日 10:30

    即将开播,去预约
    直播中,去观看