目录

目录...1

关于引用&..7

右值引用...9

把一个引用作为返回值返回需要注意点啥...9

为啥要返回一个const型引用...9

何时使用引用?...11

关于传递不可改变的(const)参数的若干建议...11

可改变参数的函数的传参原则...11

C++中函数的默认参数...11

函数原型中的默认值...11

C++中函数的多态性...12

泛型函数...12

编译器从可选函数集中选择目标函数的策略...13

C++11是如何解决泛型中的隐式转换的?...14

C++是如何确定泛型函数中以表达式作为return语句的返回值的类型的?...14

C++中一个头文件中通常应该包含哪些内容?...15

C++中register变量存在的意义?...15

C++中三种static生存期变量应该如何声明?...16

C++中静态变量初始化的机制...18

C++之一个定义原则...18

C++中两个新的变量生存期说明符...19

C++中函数的生存期...20

C++中的语言连接...20

C++中的动态内存分配...21

C++中new分配失败会怎么样?...22

C++中的placement new操作符...22

C++中的namespace.22

C++中namespace对未来编程习惯的影响...26

不能用普通的char *指针指向const char *.26

在C++数据成员默认的访问级别是什么?...27

C++中默认的继承方式是什么?...27

C++类中inline函数...29

C++中空结构体各占多少空间?...30

在C++中类不能没有默认的构造函数...30

C++中类对象初始化和赋值的区别...32

C++中的this指针...33

C++类域中的符号常量...33

C++中的新型枚举类型定义法...34

C++中的操作符重载...36

C++中的友元...37

C++中在类体内声明的friend函数...38

把一个整形数强制转换成之类类型会怎么样?...38

C++中单参数构造函数的特殊用途...38

C++什么时候使用单参数构造函数进行隐式转换呢?...43

C++中如何把一个类类型转换成类型兼容类型?...43

C++如何自动进行把一个类类型转换成类型兼容类型?...44

C++中两种使用类型转换函数的方式的区别...48

慎用C++中类型转换函数进行隐式类型转换...48

类型转换函数和友元函数...49

C++中类的声明式是干什么用的?...49

为什么在C++工程中总是把xxx.cpp和xxx.h分开来?...50

C++提供的五个默认的成员函数是什么?...50

我对C++ Primer Plus P639中关于构造函数会引起歧义的说法表示怀疑...50

C++中COPY构造函数的使用...51

一个默认的COPY构造函数完成什么工作?...51

C++中的显式COPY构造函数...51

什么是C++中的深度COPY(deep copy)?...54

以对象初始对象真的会涉及到赋值操作符函数吗?...54

写一个COPY赋值操作符要注意哪些?...55

C++中指向空指针的标识符...55

C++中关于[]操作符的重载...56

类中的static成员函数...56

深度赋值操作符的重载...56

Delete还可以用来释放空指针!...57

用delete删除非new初始化的指针会怎样?...58

C++返回值之类型的注意事项...59

用值来new类对象需要调用哪个构造函数?...59

使用placement new装载对象时的注意事项...61

在class中如何嵌套struct?...63

C++中的成员初始化列表...66

在类的继承体系中子类与父类的关系...71

public继承的多态性...73

Virtual Method.74

子类如何访问父类私有成员...76

静态绑定与动态绑定...77

向上转型(upcasting)与向下转型(downcasting)77

Virtual函数是怎么工作的?...78

构造函数不能被virtual80

析构函数有必要被virtual81

Friend函数不能被virtual81

类层次中的函数调用...81

我对private、protected和public的新认识...83

Protected.84

Abstract base class.84

继承与动态分配...85

Friend函数在类的继承中扮演一个什么角色?...88

编译器如何处理COPY构造函数...92

COPY赋值操作符如何处理类型转换...92

为什么类的构造函数不能被继承?...93

如何阻止对象的COPY?...94

父类对象赋给子类对象与子类对象赋给父类对象...95

子类友元函数调用父类友元函数...95

子类调用父类函数另外两个方法...96

Valarray泛型类...96

Has-a关系...96

如果不使用成员初始化列表会怎样?...97

Private继承和containment复合...97

Private继承下如果你想直接使用父类的对象该怎么办?...98

Private继承下如何使用父类的friend函数?...98

Private继承与containment的取舍...99

Protected继承...99

使用using引用父类成员...100

多重继承...102

多重继承中的二义性问题...102

C++中的virtual继承机制...103

为什么要使用virtual继承?...104

如果在多重继承中使用虚拟继承的话构造函数会怎样?...104

多重继承中父类函数的调用...107

当虚拟继承与非虚拟继承同时存在时子类有几个共同祖先的无名子对象?...108

虚拟继承与可见性...108

模版类的函数定义可以怎么写?...112

Template中的T可以是些什么东西?...114

Template中的T是指针的话会产生哪些问题?...114

如何正确在template

T>的T中正确运用指针?...115

模版类中的非类型参数...115

为什么在template中要使用非类型参数?...116

非类型参数的缺点...116

Template可以干些什么?...116

Template的类型参数可以不止一个...117

Template中的默认类型参数...117

什么是template中的隐式实例?...120

什么是template中的显式实例?...120

什么是template的显式特化?...120

Template的偏特化与全特化...122

成员模版...124

参数template.125

模版类与友元函数...128

Template别名...133

Friend class.134

前置声明和友元成员函数...135

互为友元类...139

共享友元函数...139

内嵌类...139

内嵌类的作用域...140

内嵌类与外部类的访问权限...140

模版中的内嵌类...140

异常...140

异常处理机制...141

最好抛出一个对象作为异常...142

C++11标准中的异常声明...142

绕开栈...143

Throw-catch机制与函数参数与返回值的区别...144

为什么在catch参数中要使用引用呢?...145

捕获任何异常的catch.145

C++中的异常类exception.147

异常也有出错的时候...148

异常的注意事项...150

异常与动态分配...151

运行时类型标识RTTI151

RTTI的3个组件...152

Dynamic_cast操作符...152

Typeid操作符和typeinfo.152

误用RTTI154

什么时候dynamic_cast转换会失败?...154

Const_cast转换...155

Static_cast类型转换...156

Reinterpret_cast强制类型转换...156

String自动机制...157

智能指针...159

Auto_ptr被废弃的原因...160

为啥unique_ptr比auto_ptr好?...160

如何选择智能指针?...161

标准模板库STL.162

基于范围的for循环...162

泛型编程的思想...163

迭代器...163

STL提供的5种迭代器...164

Input迭代器...164

Output迭代器...164

Forward迭代器...164

Bidirectional迭代器...165

Random access迭代器...165

为啥要有这么多迭代器?...165

哪些容器是排序的?...165

函数对象...166

函数对象适配器...166

C++11中的初始化列表模版...167

Cout打印浮点型数字的新旧标准的不同...168

Cout的控制器的概念...168

I/O与异常...168

Cin中的ignore函数...169

C++文件I/O..169

Is_open函数...170

C++打开多个连续文件...170

文件I/O的clear()170

文件I/O模式...170

C++中二进制文件与文本文件存储方式的不同...171

C++中的write.171

C++中的read.172

C++中文件的随机存取...172

Tellg函数和tellp函数...173

内部格式化...173

C++11中的{}初始化...173

C++11中的auto.174

C++11中的新容器方法...174

C++11中的右值引用...174

move语法...175

强迫使用move语法...175

C++11中的默认函数控制...176

C++11中的代理构造函数...177

C++11允许你继承父类构造函数...177

C++11允许你显式重写父类的virtual函数...178

C++11中的兰博达(LAMBDA)表达式...179

Lambda的必要性...180

封装器WRAPPERS.181

C++11中可变(Variadic)参数模版...183

C++11中的同步编程...185

C++11提供的其他库...185

低级编程...185

Boost中的lexical_cast186

高位存储(Big Endian)和低位存储(Little Endian)187

C++保留字...187

C++函数签名的概念...187

移位操作符...187

C++中指向成员变量的指针...188

C++11中的alignof189

C++11中的noexcept189

String中的方法...190

方法与函数的区别...191

STL.191

在代码中添加动态链接库...191

Is_permutation.192

选读...192

精通C++所需的书籍192

你可能感兴趣的:(目录)