——————————————————————————————————————
| 其实,买这本书有几个月了,
| 一直想好好拜读一下,
| 但一直给自己各种借口( 欠抽啊~ )
|
| 下定决心,好好读一下!
| 把文章的重点,加上一些自己的理解,
| 写成博文,记录学习点滴也能督促下自己。
——————————————————————————————————————
**************************** 一、 Accustoming Yourself to C++ ****************************
Ok,开始吧~ Fighting!
条款01:View C++ as a federation of languages
第一部分,正如章题所言,
先要让自己习惯C++
首先,正确理解C++,
如果把C++ 当做一门语言,是否过于繁杂,让你无从下手呢?
所以,作者第一个条款就说:
将C++ 看做一个语言联邦
如今的C++是个 multiparadigm programming language ( 多重范型编程语言 )
它同时支持
—— procedural (过程形式)
—— object-oriented (面向对象形式)
—— functional (函数形式)
—— generic (泛型形式)
—— metaprogramming (元编程形式 )
的语言。
因此,我们最好将C++ 看做是一个语言联邦而非单一的语言,
当然,分成联邦后,分出来几个次级语言来理解,
很幸运,C++主要可以用4个次语言来解释:
—— C
说到底,C++还是以C为基础。
{ block(区块)、statements(语句)、preprocessor(预处理器)、built-in data types(内置数据类型)、
arrays(数组)、pointers(指针) 等统统来自C }
许多时候,C++对问题的解法其实不过就是较高级的C解法,之前大一甚至大二时候,真心感觉C和C++的区别不是很大,就一个iostream 和 stdio.h 这两个导致输入输出流的区别,然后就是C 没有class 没有pointers 。现在就不同了。
—— Object-Oriented C++
这部分也就是让C 配上 类所诉求的那般。拥有着:classes(包括构造和析构函数)、encapsulation(封装)、inheritance(继承)、polymorphism(多态)、virtual函数等,这一部分是面向对象的设计在C++上最直接的显示。
—— Template C++
这是C++ 泛型编程部分。后面条款会有对这块的详细说明。
—— STL
STL是一个template程序库,它对 containers(容器)、iterator(迭代器)、algorithm(算法)以及function objects(函数对象)的规约有极佳的紧密配合与协调。
因此,C++并不是一个带有一系列规则的一体语言,而是主要有4个次语言而组成的联邦,每个次语言都有自己的规约。
最最重要的是:C++高效编程守则会视情况二变化,取决于你使用C++的哪一个部分。
end...
原文:http://blog.csdn.net/lttree/article/details/40322581