网站建设问题调查网站设计风格升级
- 开篇第一句话足见作者的高屋建瓴:类型决定程序中数据和操作的意义。随后列举了简单语句
的意义取决于i和j的类型。若它们都是整形,则为通常的算术意义。若它们都为字符串型,则为进行拼接操作。若为用户自定义的class类型,则…i = i + j; - C++中的基本类型(primitive)有很多,但主要分为两类:arithmetic types和void。而arithmetic types也分成两类:integral types和floating-point types。
 - 类型long long是C++11的新特性。
 - 通常float-point type中,各个类型的表示大小:float用一个word,double用两个word,而long double用三或四个word。
 - 算术计算时不要使用char,因为char在一些机器上表示为signed char,而在另外一些机器上用unsigned char表示。
 - 避免未定义和依赖具体实现的行为:

 - 将该type能够表示的数据范围之外的value赋值给该type时,会根据signed/unsigned进行反应:

 - 关于转义序列的泛化:

 - 关于变量(对象)的初始化和赋值:
是的,比较对于自定义的类而言,赋值调用的是拷贝构造copy constructor,而赋值调用的是operator=。 - 内置类型和class类型没有(显式)初始化的后果:

 - C++中变量(对象)必须先declaration后使用的原因是C++是一门静态类型语言,在编译阶段会进行(静态)类型检查。

 - scope的阐述:

 - 引用(reference)必须初始化:

 - 引用不是对象,而是已存在对象的别名:

 - reference 和 pointer:

 void *指针:
似乎void *指针是个万金油,但是
- 关于复合类型(compound type) 的良好定义方式:

 - 指针引用(reference to pointers)和指向引用的指针(pointer to a reference): 因为引用不是对象,它仅是已经存在对象的别名。所以指向引用的指针是语法错误。然而指针是一个对象,所以我们可以定义指针引用:


 
