More Effective C++:35个改善编程与设计的有效方法(中文版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

基础议题

Basics

基础议题。是的,pointers(指针)、references(引用)、casts(类型转换)、arrays(数组)、constructors(构造函数)——再没有比这些更基础的议题了。几乎最简单的 C++程序也会用到其中大部分特性,而许多程序会用到上述所有特性。

尽管你可能已经十分熟悉语言的这一部分,但有时候它们还是会令你吃惊。特别是对那些从 C 转战到 C++的程序员,因为 references,dynamic casts,default constructors 及其他 non-C性质背后的观念,往往带有一股黝黯阴郁的色彩。

这一章描述 pointers 和 references 的差异,并告诉你它们的适当使用时机。本章介绍新的 C++转型(casts)语法,并解释为什么新式转型法比旧式的 C 转型法优越。本章也检验了 C 的数组概念及 C++的多态(polymorphism)概念,并说明为什么将这两者混用是不智之举。最后,本章讨论 default constructors(默认构造函数)的正方和反方意见,并提出一些建议做法,让你回避语言的束缚(因为在你不需要 default constructors 的情况下,C++也会给你一个)。

只要留心下面各条款的各项忠告,你将向着一个很好的目标迈进:你所编写的软件可以清楚而正确地表现出你的设计意图。