坚持原创输出,点击蓝字关注我吧

作者:清菡
博客:Oschina、云+社区、知乎等各大平台都有。

目录

  • 一、C++编程简介

    • 学习 C++,需具备的基础

  • 二、目标

    • 1.单一 Class 的设计,叫做 Object Based(基于对象)

    • 2.Object Oriented(面向对象)

  • 三、C++ 的历史

  • 四、C++ 演化

    • 1.这个语言有这些版本

    • 2.学习 C++,可以分为语言的部分和标准库的部分

  • 五、必看书籍

一、C++编程简介

面向对象是种观念,我们用这种观念来写程序。需要面向对象的语言,而 c++就是支持面向对象观念的一种语言。

学习 C++,需具备的基础:

  • 曾经学过某种 procedural language(过程式语言),最好是 c 语言,其它语言也可以。

  • 变量

  • 类型:int,float,char,struct…

  • 作用域

  • 循环:while,for

  • 流程控制:if-else,switch-case

  • 知道一个程序需要编译、连结才能被执行。

  • 知道如何编译和连结(如何建立一个可进行程序)

c++语言是建构在 c 之上的,所以一些术语或者关键词会跟 c 有关。所以和过程式语言很多方面是共通的。如果学过 c,学 c++会更快。

二、目标

1.单一 Class 的设计,叫做 Object Based(基于对象)。

  • 以良好的方式编写 c++ class

    c++代码里面最重要的每一个单元,就是一个 class。

    class 有 2 个很经典的分类:

    • class without pointer members

      -Complex

    • class with pointer members

      -String

一种 class 带 pointer,一种不带 pointer。这 2 中在设计上,思考上截然不同。

2.Object Oriented(面向对象)。

如果写好几个 class,彼此之间有某种关联的话,就可以说是面向对象。

  • 继承(inheritance)

  • 复合(composition)

  • 委托(delegation)

首先要培养单一 class 好的习惯写法。然后可以扩大好几个 class,好几个类彼此之间有什么样的关系。

三、C++ 的历史

  • B 语言(1969)

  • C 语言(1972)

  • C++语言(1983)
    (new C->C with Class->C++)

  • Java 语言

  • C#语言

好像没有 A 语言。早期不叫做 c++,叫做 C with Class。从名字可以看出,以 c 语言为基础,并且带有 class。class 是学习的重点。

面向对象语言不止只有 c++,c++是第一个大规模的被世界所接受的语言。后面有 Java 语言、c#以及其它的语言。

这些语言的精神都一样,关键字也都差不多。所以学了一种语言,也可以了解了另外的 2-3 种语言了,当然它的细节会有所不同。

四、C++ 演化

1.这个语言有这些版本:

  • C++ 98(1.0)真正正规化,变成有国际规范的。

  • C++ 03(TR1,Technical Report 1)这中间还有些小的版本,2003 年有个小版本叫做 TR1,Technical Report 1。

  • C++ 11(2.0) 2011 年才出现 2.0。

  • C++ 14 2014 年又有个小版本。

不必在乎版本,大部分程序员用的是 C++ 98。

C++ 11(2.0)这个版本出现了很多新的关键字,很多新的概念,在标准库上也出现了很多新的工具,新的东西给大家用。使用新特性的人不是太多。

候捷老师教的是一些根本的东西,从 c++ 98 就有了。以上,这个语言在正规化的发展上有这些进程。

2.学习 C++,可以分为语言的部分和标准库的部分:

现在学任何一个语言,都要把这 2 个分开来。在早期 c 的时代,大家关注的是语言的部分,当然也脱离不了标准库的部分,c 也有标准库。

现在的语言越来越复杂,所以它们的标准库给大家的东西也是越来越多。

使用标准库也是非常重要的事情。现在主要谈语言,用到标准库,只有最简单的一些东西的输出。事实上标准库是非常庞大,非常有用的。

如果一个 c++程序员不怎么用标准库的话,不能算是一个合格的好的 c++程序员,不能算是有生产力的 c++程序员。

五、必看书籍

推荐看这 2 本世界上卖得最好的 c++百科全书,c++之父写的书:

这本书是 c++第一个编译器的作者所写的书。

需要专家的建议,可以看的书:

什么东西该写,什么东西怎样写比较好。里面以条款的形式告诉你什么该做,什么不该做,做什么会影响效率。

这个是中文版:

标准库方面好的书:

看标准库的源代码:

STL 是标准库的前身。标准库里面的 80-90%,以前叫做 STL。本篇文章是我看候捷老师的视频,总结出来的笔记,感谢优秀的人,也感谢阅读我文章的人,我会努力学习 c++的。


公众号 「清菡软件测试」 首发,更多原创文章:清菡软件测试 97+原创文章,欢迎关注、交流,禁止第三方擅自转载。

感谢关注清菡,欢迎点击在看和转发!

更多推荐

C++编程简介