搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
你必须知道的222个C++语言问题
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115224965
  • 作      者:
    范立锋,李世欣编著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2010
收藏
编辑推荐
  请相信,你并不是第一个遇到问题的人。发现问题,思考问题,寻找答案,解决问题。《你必须知道的222个C++语言问题》内容涵盖:
  C++与C的区别和联系
  面向对象的设计思想
  C++中的类和对象
  继承
  多态
  指针与字符串
  运算符重载
  用户自定义数据类型、结构和枚举
  类型转换与RTTI
  异常处理
  标准模板库
  通用函数及模板
  C++中的输入和输出
  内存管理
  进程及线程
  C++与C语言的结合应用
  关于软件性能的思考
  222个编程新手最常遇害到的C++语言问题,菜鸟想问不敢开口?扫除入门者的障碍,开辟成长捷径。
展开
内容介绍
  《你必须知道的222个C++语言问题》精选了222个在C++程序设计中经常遇到的问题和典型功能,覆盖了实际开发中的各种需求,目的是帮助读者解决在C++学习和开发中经常遇到的实际问题,同时提高学习和开发的效率。《你必须知道的222个C++语言问题》涵盖了C++与C语言的区别和联系、面向对象的设计思想、C++中的类和对象、继承、多态、指针与字符串、运算符重载、用户自定义数据类型、结构和枚举、类型转换与RTTI、异常处理、标准模板库、通用函数及模板、C++中的输入与输出、内存管理、进程及线程、C++与C语言的综合应用和关于软件性能的思考等内容。《你必须知道的222个C++语言问题》所列出的问题均是作者在经过充分调研的基础上,从实际开发项目中总结出来的典型问题,提供的解决方法注重实用性。书中浓缩了作者多年从事项目开发的心得体会和实践经验教训,并提供了程序设计的示例代码,为初学者提供重要的参考价值。
  《你必须知道的222个C++语言问题》适合于已经初步掌握C++编程概念、方法的读者阅读,可以帮助读者迅速解决实际开发中的疑难问题。
展开
精彩书摘
  面向对象是对现实世界模型的抽象,任何现实中的事物都是对象,而各个对象之间通过消息发生作用。传统的面向过程编程方式都是以具体实现过程为核心,以算法为驱动:而面向对象编程方式则是以对象为核心,以消息为驱动。面向对象只是一种编程思想,并不局限于某种特定的编程语言。任何一门面向对象的编程语言,都会包含以下几个基本概念。
  1.对象
  现实世界中的一切事物都可以被看作是对象。无论是简单对象还是复杂对象,任何对象都有其各自的特征和行为。在面向对象程序设计中,现实世界中对象的特征被抽象为属性,而行为则被抽象为方法。
  2.消息
  任何事物都不是孤立存在的,各个事物之间都存在着一定的联系。在面向对象的程序设计中,各个对象是通过消息的方式发生关联的。所谓的消息指的是一个对象向另外一个对象发出的请求,当接收请求的对象收到消息以后,会调用有关方法执行相应的操作。在面向对象的程序设计中,消息有以下几个特点。
  (1)同一个对象可以向其他多个不同对象发送相同的消息,根据接收对象不同,得到的响应也有所区别。
  (2)同一个对象可以接收来自不同对象,不同形式的多个消息。根据消息类型不同,接收对象可以做出不同的响应。
  (3)响应不是必须存在的。
  3.类
  为了便于区分,人们通常将一些具有相同或相似特征及行为的事物进行分类,例如水果、蔬菜、人、动物等。“类”只在概念层次存在,泛指一个群体,现实世界中没有哪个单独的对象可被称为“类”。面向对象程序设计中的类,是将那些具有相同属性和操作的对象进行归并,形成的一个具有通用特性的集合。
  4.方法
  在面向对象程序设计中,当某一对象接收到消息后,会执行相应的操作。而执行操作的过程是通过调用特定方法来实现的。在C++中方法是以函数形式实现的,被称为成员函数。
展开
目录
第1章 C++与C语言的区别和联系
FAQ1.01 C++与C语言比较有哪些特点?
FAQ1.02 c++与C语言的代码注释风格有什么不同?
FAQ1.03 C++与C语言的程序结构有何不同?
FAQ1.04 C++与C语言是如何处理输入与输出的?
FAQ1.05 C++中局部变量的声明方式是否与C语言相同?
FAQ1.06 在函数原型的使用方面,c++与C语言是否一致?
FAQ1.07 在常量的定义方面,C++与C语言有何不同?
FAQ1.08 C语言允许函数重载么?C++对于函数重载做出了哪些规定?
FAQ1.09 处理动态存储分配问题时C++与C语言有何不同?

第2章 面向对象的设计思想
FAQ2.01 为什么采用面向对象编程模式?
FAQ2.02 面向对象技术包含哪些基本概念?
FAQ2.03 面向对象技术的基本特征包括哪些?
FAQ2.04 为什么封装对面向对象来说很重要?
FAQ2.05 接口与实现的分离有什么好处?
FAQ2.06 抽象是什么?
FAQ2.07 封装与抽象有何联系?
FAQ2.08 继承是否会削弱封装机制?
FAQ2.09 组合是怎样定义的,它有什么作用?
FAQ2.10 组合的类型都包括哪些?
FAQ2.11 如何理解动态特性?

第3章 C++中的类和对象
FAQ3.01 如何理解类和对象?
FAQ3.02 如何理解对象的初始化?
FAQ3.03 如何理解对象的生存周期?
FAQ3.04 如何向函数传递对象?
FAQ3.05 编写c++类时需要注意哪些问题?
FAQ3.06 如何理解构造函数?
FAQ3.07 默认构造函数是什么,它有什么特点?
FAQ3.08 何时调用拷贝构造函数?
FAQ3.09 深拷贝与浅拷贝的区别是什么?
FAQ3.10 如何理解析构函数?
FAQ3.11 程序如何处理静态成员变量及静态成员函数?
FAQ3.12 为什么使用友元?如何使用?
FAQ3.13 使用友元有什么优点?

第4章 继承
FAQ4.01 如何理解C++中的继承?
FAQ4.02 C++程序的继承结构是怎样的?
FAQ4.03 当派生类与基类成员名称冲突时应如何解决?
FAQ4.04 为什么要使用虚基类?
FAQ4.05 继承体系中构造函数的调用顺序是怎样的?
FAQ4.06 在继承中如何使用pub1ic、private以及protected关键字?
FAQ4.07 类的默认访问权限是什么?为什么使用它作为默认权限?
FAQ4.08 为什么要使用protected关键字?如何使用?
FAQ4.09 为什么派生类不能访问其基类的private成员?
FAQ4.10 struct与c1ass之间有什么不同?
FAQ4.11 如何为基类构造函数传递参数?

第5章 多态
FAQ5.01 如何理解C++中的捆绑?
FAQ5.02 如何理解和使用虚函数?
FAQ5.03 如何理解和使用纯虚函数?
FAQS.04 如何理解和使用抽象类?
FAQ5.05 多态是如何实现的?
FAQ5.06 如何理解静态多态与动态多态?
FAQS.07 如何理解虚函数和构造函数?
FAQ5.08 如何理解虚函数和析构函数?

第6章 指针与字符串
FAQ6.01 如何理解sizeof操作符?
FAQ6.02 指针是什么?
FAQ6.03 如何理解地址和指针的关系?
FAQ6.04 如何使用取地址操作符&?
FAQ6.05 指针与取地址操作符&怎样结合使用?
FAQ6.06 如何将指针与间接寻址操作符+结合使用?
FAQ6.07 指针的运算有哪些?
FAQ6.08 指针变量与引用有什么区别?
FAQ6.09 指针变量与变量指针有什么区别?
FAQ6.10 指针的比较指的是什么?
FAQ6.11 如何理解多级指针?
FAQ6.12 如何使用函数指针?
FAQ6.13 如何理解指针函数?
FAQ6.14 在指针中如何使用const限定符?
FAQ6.15 指针和数组之间有什么联系?
FAQ6.16 如何理解指针数组?
FAQ6.17 使用指针时有哪些常见的错误?
FAQ6.18 字符和字符串有什么区别?
FAQ6.19 常用的字符串操作函数有哪些?
FA06.20 如何理解字符数组和字符指针?

第7章 运算符重载
FAQ7.01 为什么使用运算符重载?
FAQ7.02 使用运算符重载应遵循哪些规则?
FAQ7.03 哪些运算符不能重载?哪些可以重载?
FAQ7.04 为什么要使用友元函数重载运算符?
FAQ7.05 使用友元函数重载“++”、“-”运算符时可能会出现什么问题?
FAQ7.06 如何实现NEW和DEIETE运算符的重载?
FAQ7.07 如何重载数组下标运算符?
FAQ7.08 如何将运算符函数作为成员函数使用?
FAQ7.09 成员运算符函数与友元运算符函数有什么区别?

第8章 用户自定义数据类型、结构和枚举
FAQ8.01 如何定义结构类型及结构声明?
FAQ8.02 对于无名结构是如何使用的?
FAQ8.03 如何通过点操作符访问结构?
FAQ8.04 结构数组是如何定义及使用的?
FAQ8.05 如何定义及使用结构中的结构?
FAQ8.06 如何使用多重结构嵌套?
FAQ8.07 如何将结构地址传递给函数?
FAQ8.08 什么是枚举类型?如何使用枚举类型?

第9章 类型转换与RTTI
FAQ9.01 C++预定义的类型转换有哪些方式?
FAQ9.02 如何实现类这种数据类型与其他数据类型的转换?
FAQ9.03 为什么需要转换函数?如何创建转换函数?
FAQ9.04 C++新定义了哪几个强制转换运算符?作用分别是什么?
FAQ9.05 如何区分静态类型检查和动态类型检查?
FAQ9.06 为什么要避免使用动态类型检查?
FAQ9.07 什么是运行时类型标识?
FAQ9.08 什么是downcast?
FAQ9.09 为什么向下的类型转换是危险的?
FAQ9.10 dynamic-cast()函数的作用是什么?
FAQ9.11 static-cast()函数的作用是什么?
FAQ9.12 typeid()函数的作用是什么?

第10章 异常处理
FAQ10.01 C++异常处理的原理是什么?
FAQ10.02 异常处理是如何实现的?
FAQ10.03 使用异常时应该注意哪些方面?
FAQ10.04 抛出的异常和捕获的异常是否必须匹配?
FAQ10.05 如何处理TRY语句中函数抛出的异常?
FAQ10.06 程序在何时执行CATCH语句?
FAQ10.07 一个TRY语句是否可以使用多个CATCH语句?如何使用?
FAQ10.08 对异常使用省略符有什么作用?
FAQ10.09 HROW语句具体有什么作用?
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证