More Effective C++:1、基础议题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_30534935/article/details/102546592

基础议题。是的,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++ 也会给你一一个。


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



条款1:仔细区别 pointers 和 references



条款2:最好使用 C++ 转型操作符



条款3:绝对不要以多态(polymorphically)方式处理数组



条款4:非必要不提供 default constructor

猜你喜欢

转载自blog.csdn.net/qq_30534935/article/details/102546592
今日推荐