C++探索之旅(2)
1.概述
现在最流行的语言大概是python了吧,由于python在爬虫领域的大放光彩以及它的易学易用和丰富的库,导致现在似乎已经变成人人必学的编程语言。但是究其根本,大概python都算不得编程语言,它只是一种古老的批处理命令集合。而且我们国家在这次新冠病毒疫情之下暴露出很多信息化的问题,诸如医疗统计数据问题、人传人的路线等等,这些底层并且基础性的问题摆在人们面前。人们第一次审视到,原来我们引以为傲的信息化建设在真正的病毒面前就像纸糊的一样经不起考验。这个时候就说到了C++这种最重要的编程语言之一。我推荐新入门的,尤其是学生朋友们从C++这种语言开始学起,这是最扎实的入门方法。后面我会逐一介绍为什么。
1.1 C++的三大法宝
1.1.1 继承C语言
轮子哥曾经曰:学习C++最好的时候就是没有学C的时候。为什么这么说呢,因为C++虽然继承自C,但是却和C有很大区别,尤其是编程习惯。这一点就像学功夫要从小就加入一个门派一样,武当虽然继承自少林,但是它跟少林完全不是一个路数,如果学了少林武功反而会让学武当的招数受限。但是C++确实继承了C语言的高效,这就是很多算法采用C++的原因之一。在这一点上,C++绝对可以吊打python。
1.1.2 面向对象
对象这个词一般是形容女友的。比如“你有对象了没”。在编程中其实道理还真差不多。最早的时候,比如C语言的时代,就是过程编程,也是人们熟知的“蛋炒饭”。鸡蛋是数据,先放油再放鸡蛋再放冷饭是算法,放在一起炒出锅的蛋炒饭就是程序。但是这种方法在面对满汉全席的时候就不行了,更别提非常复杂的女人了。咱们谈恋爱的时候能先看电影,再摸手,没挨打再约饭吗?显然不行,女神饿了想吃饭,你带她看电影,女神困了想睡觉,你带她吃饭,如果这样搞多半会被女神抛弃。
所以这个时候C++出现了,面向对象开展编程。这就是说要面向女神的需求来编制语言。比如类可以描述各种女生的基本特征(姓名、长相、学历、特长、性格等),而对象则代表中意的女神(小芳、漂亮、硕士、游泳、开朗)。这样就可以有针对性的开展追求了。例如,在了解小芳喜欢游泳后,就可以上网搜索最近的游泳馆(创建类),约她去游泳馆(通过类创建对象)。通过记下小芳喜欢的游泳馆,这样下次约她出去旅游时就用不着重新问她喜欢哪种游泳馆了,直接调出类一看就知道了。所以第二大法宝出现了:可以方便的重用和修改现有的、已测试的代码。
1.1.3 泛型编程
简单来说,泛型编程就是C++模板提供了一种方法,通过搞定一个通用泡妞手册(编一个泛型函数),就可以约上一堆女孩子(搞定各种实际类型)。
C++让每个程序员更加快乐。
——Biarne Stroustrup
本章总结
啰啰嗦嗦讲了一堆,其实我最想表达的就是C++的两重性:高效和抽象。这简直就像一个女生既有美丽的外表,又有有趣的灵魂。脱胎于C语言使得她具有灵活高效的面向硬件编程,面向对象又使得她具有高级语言的灵魂。所以,爱她就深入的学习她吧!
2020年2月13日于北京