面向对象是种观念,我们用这种观念来写程序。需要面向对象的语言,而 c++就是支持面向对象观念的一种语言。
c++语言是建构在 c 之上的,所以一些术语或者关键词会跟 c 有关。所以和过程式语言很多方面是共通的。如果学过 c,学 c++会更快。
一种 class 带 pointer,一种不带 pointer。这 2 中在设计上,思考上截然不同。
如果写好几个 class,彼此之间有某种关联的话,就可以说是面向对象。
首先要培养单一 class 好的习惯写法。然后可以扩大好几个 class,好几个类彼此之间有什么样的关系。
好像没有 A 语言。早期不叫做 c++,叫做 C with Class。从名字可以看出,以 c 语言为基础,并且带有 class。class 是学习的重点。
面向对象语言不止只有 c++,c++是第一个大规模的被世界所接受的语言。后面有 Java 语言、c#以及其它的语言。
这些语言的精神都一样,关键字也都差不多。所以学了一种语言,也可以了解了另外的 2-3 种语言了,当然它的细节会有所不同。
不必在乎版本,大部分程序员用的是 C++ 98。
C++ 11(2.0)这个版本出现了很多新的关键字,很多新的概念,在标准库上也出现了很多新的工具,新的东西给大家用。使用新特性的人不是太多。
候捷老师教的是一些根本的东西,从 c++ 98 就有了。以上,这个语言在正规化的发展上有这些进程。
现在学任何一个语言,都要把这 2 个分开来。在早期 c 的时代,大家关注的是语言的部分,当然也脱离不了标准库的部分,c 也有标准库。
现在的语言越来越复杂,所以它们的标准库给大家的东西也是越来越多。
使用标准库也是非常重要的事情。现在主要谈语言,用到标准库,只有最简单的一些东西的输出。事实上标准库是非常庞大,非常有用的。
如果一个 c++程序员不怎么用标准库的话,不能算是一个合格的好的 c++程序员,不能算是有生产力的 c++程序员。